File: miscellaneous.xml

package info (click to toggle)
hugs98 98.200311-4
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 12,964 kB
  • ctags: 8,084
  • sloc: ansic: 67,521; haskell: 61,497; xml: 4,566; sh: 3,264; cpp: 1,936; yacc: 1,094; makefile: 915; cs: 883; sed: 10
file content (370 lines) | stat: -rw-r--r-- 9,843 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
<chapter id="miscellaneous">
<title>Miscellaneous</title>

<sect1 id="history">
<title>Hugs 98 release history</title>

<para>
These are the release notes for the program since it was renamed Hugs 98,
reflecting substantial compliance with Haskell 98
(though with numerous optional extensions).
Archives of older versions of
<ulink url="http://www.cse.ogi.edu/~mpj/goferarc/index.html">Gofer</ulink>
and
<ulink url="http://www.cse.ogi.edu/~mpj/hugsarc/index.html">Hugs</ulink>
are still available from Mark Jones's web page.
</para>

<sect2>
<title>January 1999 (Beta release)</title>

<para>
Headline news for this release includes:
</para>

<itemizedlist>
<listitem><para>
Hugs goes Haskell 98!  Hugs 98 is the first released Haskell system
to support the new standard for Haskell 98.
</para></listitem>

<listitem><para>
Hugs goes Open Source!  Hugs 98 is the first Hugs release to be
distributed as Open source software.  Responding to requests from
users, this relaxes the conditions of use and distribution of
previous releases, and will hopefully make it easier to use Hugs
for a wide range of projects.
</para></listitem>
</itemizedlist>

<para>
This release of Hugs also merges the features of several earlier releases
into one single system. This includes:
</para>

<itemizedlist>
<listitem><para>
The module system and dynamic linking facilities of Hugs 1.4 (June 1998);
</para></listitem>

<listitem><para>
The type system extensions (multi-parameter classes, TREX, rank-2
polymorphism, existentials, etc.) of Hugs 1.3c p1 (March 1998);
</para></listitem>

<listitem><para>
New features and modifications to support the draft Haskell 98 standard;
</para></listitem>

<listitem><para>
A whole range of bug fixes and additions for all of the above.
</para></listitem>
</itemizedlist>

</sect2>

<sect2>
<title>May 1999</title>

<para>
This release is largely conformant with Haskell 98, including
monad and record syntax, newtypes, strictness annotations, and
modules.  In addition, it comes packaged with the libraries defined
in the most recent version of the Haskell Library Report and with
extension libraries that are compatible with GHC 3.0 and later.
</para>

<para>
Additional features of the system include:
</para>

<itemizedlist>
<listitem><para>
<quote>Import chasing</quote>: a single module may be loaded, and Hugs will
chase down all imports as long as module names are the same as
file names and the files are found in the current path.
</para></listitem>

<listitem><para>
A simple GUI for Windows to facilitate program development.
</para></listitem>

<listitem><para>
Library extensions to support concepts such as concurrency,
mutable variables and arrays, monadic parsing, tracing (for
debugging), graphics, and lazy state threads.
</para></listitem>

<listitem><para>
A Win32 library for complete access to windows, graphics, and
other important OS functionalities and a graphics library for
easy access to Win32 graphics.
</para></listitem>

<listitem><para>
A <quote>foreign interface</quote> mechanism to facilitate interoperability
with C.
</para></listitem>
</itemizedlist>

</sect2>

<sect2>
<title>November 1999</title>

<itemizedlist>
<listitem><para>
BSD-style license (replacing the Artistic License)
</para></listitem>

<listitem><para>
new commands <command>:browse</command> and <command>:version</command>
</para></listitem>

<listitem><para>
experimental multi-instance resolution and <command>:xplain</command> command
</para></listitem>

<listitem><para>
functional dependencies
</para></listitem>

<listitem><para>
zero parameter type classes
</para></listitem>

<listitem><para>
better handling of overlapping instances
</para></listitem>

<listitem><para>
various bug fixes
</para></listitem>
</itemizedlist>

<!-- the next two were bugfix releases of Nov99, so make them sub -->
<!-- sections. -->
<sect3>
<title>February 2000</title>

<para>
This is purely a bug-fix release of Hugs98 November 99.
It fixes the following problems:
</para>

<itemizedlist>
<listitem><para>
If you defined an instance which inherited a method via a
superclass, hugs would go into an infinite loop.  Fortunately,
most people weren't doing this (except Chris Okasaki...).
</para></listitem>

<listitem><para>
There were a couple of holes in the implementation of implicit parameters
(<quote><literal>with</literal></quote> wasn't always being scoped properly,
sometimes capturing implicit parameters outside of its scope).
</para></listitem>

<listitem><para>
Functional dependencies weren't being properly propagated in
some cases with derived instances
(<quote><literal>instance P ... =&gt; Q ...</literal></quote>).
</para></listitem>
</itemizedlist>

</sect3>

<sect3>
<title>July 2000</title>

<para>
This is purely a bug-fix release of Hugs98 February 2000.
</para>

</sect3>

</sect2>

<sect2>
<title>February 2001</title>

<para>
This is a major release that incorporates bug fixes as well as
several new features and enhancements that have been developed for
Hugs over the last year. It is announced with the intention that
it will remain a stable and lightweight implementation of Haskell 98
+ extensions for some considerable time.
</para>

<para>
A list of the most important new features looks as follows:
</para>

<itemizedlist>
<listitem><para>
A Foreign Function Interface closely modelled after the one
provided by GHC.
</para></listitem>

<listitem><para>
Built-in, Hood-like debugging support.
</para></listitem>

<listitem><para>
Parallel list comprehensions, a.k.a. zip-comprehensions.
</para></listitem>

<listitem><para>
A new syntax for recursive monad bindings.
</para></listitem>

<listitem><para>
A new GUI under Windows that doesn't consume all CPU time.
</para></listitem>

<listitem><para>
Support for the MacOS platform integrated into the main distribution.
</para></listitem>

<listitem><para>
Corrections of all bugs reported for the January 2001 beta
release.
</para></listitem>
</itemizedlist>

</sect2>

<sect2>
<title>December 2001</title>

<para>
The most important features of this new release are:
</para>

<itemizedlist>
<listitem><para>
The incompatibilities between Hugs and the Haskell Graphics Library
have been fixed, and binaries for the HGL are now available on the
Hugs download page.
</para></listitem>

<listitem><para>
The missing standard libraries <literal>Directory</literal>,
<literal>CPUTime</literal>, <literal>Time</literal> and
<literal>Locale</literal>
have been added along with a complete implementation of
Haskell 98 <literal>IO</literal>.
</para></listitem>

<listitem><para>
Hugs is now delivered with most of the <literal>hslibs</literal> libraries
installed in the <literal>lib/exts/</literal> directory.
The added modules cover the <literal>Edison</literal>,
<literal>Parsec</literal>, <literal>HaXml</literal>,
<literal>QuickCheck</literal>, <literal>concurrent</literal>,
<literal>monad</literal> and <literal>html</literal> subdirectories
of <literal>hslibs</literal>.
</para></listitem>

<listitem><para>
The <command>:set</command> option now refuses the user to set a module
search path that doesn't contain the <literal>Prelude</literal>.
This is to protect users from accidentally rendering their Hugs setups
unusable, esp. so on Windows machines where the options are persisted
to the Registry.
</para></listitem>

<listitem><para>
MacOS X is now one of the supported unix ports, with pre-built
binaries available on the download page.
</para></listitem>

<listitem><para>
Experimental support is provided for hierarchical module names,
where a module name <literal>A.B.C</literal> is mapped onto the file path
<literal>A/B/C</literal>{<literal>.hs</literal>,<literal>.lhs</literal>}
and appended to each of the path prefixes in
<literal>HUGSPATH</literal> until the name of a readable file is found.
</para></listitem>
</itemizedlist>

</sect2>

<sect2>
<title>November 2002</title>

<para>
Feature highlights of this new release are:
</para>

<itemizedlist>
<listitem><para>
Much improved FFI support (contributed by Alastair Reid), bringing
Hugs really very close to the Haskell FFI specification.
</para></listitem>

<listitem><para>
Adoption of a significant subset of GHC's hierarchical libraries
(contributed by Ross Paterson).
</para></listitem>

<listitem><para>
An (allegedly) complete implementation of the Haskell98 module
system (Sigbjorn Finne).
</para></listitem>

<listitem><para>
Numerous bug fixes since the previous major release in Dec 2001.
</para></listitem>
</itemizedlist>

</sect2>

<sect2>
<title>November 2003</title>

<para>
There has been substantial internal restructuring.
In addition to numerous bug fixes, user-visible changes include:
</para>

<itemizedlist>
<listitem><para>
The beginnings of a User's Guide (though still incomplete).
</para></listitem>

<listitem><para>
The <literal>Double</literal> type is now double-precision
on most architectures.
</para></listitem>

<listitem><para>
Hugs now relies on the same hierarchical libraries as GHC and Nhc98,
and provides almost all of them.
For now, compatibility with the old libraries is provided by stub
modules, but users are encouraged to migrate to the new libraries.
</para></listitem>

<listitem><para>
Full support for imprecise exceptions (but not asynchronous ones).
Most runtime errors are now reported by applying <literal>print</literal>
to an <literal>Exception</literal>
(formerly the built-in printer was applied to the faulty redex).
</para></listitem>

<listitem><para>
Integrated .NET support (on Windows platforms).
</para></listitem>

<listitem><para>
The <option>-e</option>, <option>-f</option>, <option>-i</option>,
<option>-N</option>, <option>-W</option> and <option>-X</option> options
and the <command>:project</command> command have been removed.
</para></listitem>
</itemizedlist>

</sect2>

</sect1>

</chapter>