ghc-base.git
20 years ago[project @ 2003-07-21 13:21:02 by malcolm]
malcolm [Mon, 21 Jul 2003 13:21:02 +0000 (13:21 +0000)]
[project @ 2003-07-21 13:21:02 by malcolm]
>  Build Control.Monad before Data.HashTable, the latter depends on the
>  former. Shouldn't the build system know about that automatically?

Yes.  The right way to fix the issue is to add a dependency between
the .o files.

20 years ago[project @ 2003-07-21 09:26:23 by simonmar]
simonmar [Mon, 21 Jul 2003 09:26:23 +0000 (09:26 +0000)]
[project @ 2003-07-21 09:26:23 by simonmar]
Fix showIntAtBase to match the report.  Its signature was previously

  showIntAtBase :: Integral a => a -> (a -> Char) -> a -> ShowS

and is now:

  showIntAtBase :: Integral a => a -> (a -> Char) -> a -> ShowS

20 years ago[project @ 2003-07-16 17:46:52 by sof]
sof [Wed, 16 Jul 2003 17:46:52 +0000 (17:46 +0000)]
[project @ 2003-07-16 17:46:52 by sof]
[win32]asyncDoProc :: FunPtr (Ptr a -> IO Int) -> Ptr a -> IO Int

20 years ago[project @ 2003-07-16 10:55:20 by simonmar]
simonmar [Wed, 16 Jul 2003 10:55:20 +0000 (10:55 +0000)]
[project @ 2003-07-16 10:55:20 by simonmar]
- Make showHex and showOct match the report (don't add leading "Ox" or
  "Oo").

- Remove showBin, which isn't specified by the report.

20 years ago[project @ 2003-07-16 10:46:29 by panne]
panne [Wed, 16 Jul 2003 10:46:29 +0000 (10:46 +0000)]
[project @ 2003-07-16 10:46:29 by panne]
Build Control.Monad before Data.HashTable, the latter depends on the
former. Shouldn't the build system know about that automatically?

20 years ago[project @ 2003-07-10 19:25:58 by sof]
sof [Thu, 10 Jul 2003 19:25:59 +0000 (19:25 +0000)]
[project @ 2003-07-10 19:25:58 by sof]
For System.Directory.renameFile on Win32 platforms, implement the Haskell98
semantics of replacing the target file if it already exists (i.e.,
file/directory renaming is now done by dirUtils.c:__hscore_renameFile().)

Document that System.Directory.renameDirectory will fail on Win32 boxes should
the target directory exist.

Merge to STABLE, I suppose.

20 years ago[project @ 2003-07-08 16:22:52 by panne]
panne [Tue, 8 Jul 2003 16:22:53 +0000 (16:22 +0000)]
[project @ 2003-07-08 16:22:52 by panne]
Fixed some more Haddock links.

20 years ago[project @ 2003-07-08 16:04:54 by panne]
panne [Tue, 8 Jul 2003 16:04:54 +0000 (16:04 +0000)]
[project @ 2003-07-08 16:04:54 by panne]
Export TestResult, too

20 years ago[project @ 2003-07-08 15:46:40 by panne]
panne [Tue, 8 Jul 2003 15:46:42 +0000 (15:46 +0000)]
[project @ 2003-07-08 15:46:40 by panne]
Fixed some Haddock links.

20 years ago[project @ 2003-07-03 15:22:04 by sof]
sof [Thu, 3 Jul 2003 15:22:04 +0000 (15:22 +0000)]
[project @ 2003-07-03 15:22:04 by sof]
[mingw only] asyncDoProc :: FunPtr (Ptr a -> IO ()) -> Ptr a -> IO ()

20 years ago[project @ 2003-07-02 13:27:35 by stolz]
stolz [Wed, 2 Jul 2003 13:27:35 +0000 (13:27 +0000)]
[project @ 2003-07-02 13:27:35 by stolz]
fork() never returns with EINTR

20 years ago[project @ 2003-06-30 14:08:24 by stolz]
stolz [Mon, 30 Jun 2003 14:08:24 +0000 (14:08 +0000)]
[project @ 2003-06-30 14:08:24 by stolz]
Duplex Handles are writeable.

Noticed by: Jurriaan Hage

Please MERGE

20 years ago[project @ 2003-06-24 09:40:51 by stolz]
stolz [Tue, 24 Jun 2003 09:40:51 +0000 (09:40 +0000)]
[project @ 2003-06-24 09:40:51 by stolz]
Pick up openFileEx/openBinaryFile change in error message

20 years ago[project @ 2003-06-22 09:24:23 by ross]
ross [Sun, 22 Jun 2003 09:24:23 +0000 (09:24 +0000)]
[project @ 2003-06-22 09:24:23 by ross]
Hugs only: import throwIO

20 years ago[project @ 2003-06-21 20:21:04 by malcolm]
malcolm [Sat, 21 Jun 2003 20:21:04 +0000 (20:21 +0000)]
[project @ 2003-06-21 20:21:04 by malcolm]
Exclude openBinaryFile etc from nhc98 build until we implement it.

20 years ago[project @ 2003-06-20 14:42:03 by ross]
ross [Fri, 20 Jun 2003 14:42:03 +0000 (14:42 +0000)]
[project @ 2003-06-20 14:42:03 by ross]
Hugs only: no hSetBinaryMode

20 years ago[project @ 2003-06-19 13:20:37 by simonmar]
simonmar [Thu, 19 Jun 2003 13:20:37 +0000 (13:20 +0000)]
[project @ 2003-06-19 13:20:37 by simonmar]
Fix reallocBytes: when size is zero, it is supposed to act like free.
Which it did, except that we were complaining about the NULL return
value from C's realloc and reporting it as an error.

MERGE TO STABLE

20 years ago[project @ 2003-06-19 13:04:49 by simonmar]
simonmar [Thu, 19 Jun 2003 13:04:52 +0000 (13:04 +0000)]
[project @ 2003-06-19 13:04:49 by simonmar]
Following near-silence on the libraries list, add

  openBinaryFile :: FilePath -> IOMode -> IO Handle
  hSetBinaryMode :: Handle -> Bool -> IO ()

to System.IO.

IOModeEx(..) and openFileEx are still available from IOExts (package
lang), but are marked DEPRECATED.

20 years ago[project @ 2003-06-19 12:55:09 by simonmar]
simonmar [Thu, 19 Jun 2003 12:55:09 +0000 (12:55 +0000)]
[project @ 2003-06-19 12:55:09 by simonmar]
Fix typo in doc string

20 years ago[project @ 2003-06-19 10:42:26 by simonmar]
simonmar [Thu, 19 Jun 2003 10:42:26 +0000 (10:42 +0000)]
[project @ 2003-06-19 10:42:26 by simonmar]
Add raiseIO# primop.

This is part of ensuring that exceptions are *precise* in the IO monad
(as opposed to imprecise exceptions in the pure world).  If we allow
the strictness analyser to see the definition of throwIO:

  throwIO e = IO $ \s -> throw e

then it might re-order evaluation in the IO monad, with the result
that we get _|_ instead of an exception, or one kind of exception when
we were expecting another.  We therefore must prevent the strictness
analyser from doing these reorderings in the IO monad.  Hiding the
definition of throwIO by making it a primop solves part of the problem
(there's more to come).

See SourceForge bug #752149.

20 years ago[project @ 2003-06-19 10:38:15 by simonmar]
simonmar [Thu, 19 Jun 2003 10:38:15 +0000 (10:38 +0000)]
[project @ 2003-06-19 10:38:15 by simonmar]
Fix Windows build

20 years ago[project @ 2003-06-19 09:32:04 by wolfgang]
wolfgang [Thu, 19 Jun 2003 09:32:04 +0000 (09:32 +0000)]
[project @ 2003-06-19 09:32:04 by wolfgang]
fix misleading typo in comment

20 years ago[project @ 2003-06-18 08:06:00 by stolz]
stolz [Wed, 18 Jun 2003 08:06:00 +0000 (08:06 +0000)]
[project @ 2003-06-18 08:06:00 by stolz]
fork() never returns with EINTR

20 years ago[project @ 2003-06-16 08:02:09 by simonpj]
simonpj [Mon, 16 Jun 2003 08:02:10 +0000 (08:02 +0000)]
[project @ 2003-06-16 08:02:09 by simonpj]
Add Haddock docs, courtesy of Hal Daume

20 years ago[project @ 2003-06-12 16:06:06 by simonmar]
simonmar [Thu, 12 Jun 2003 16:06:07 +0000 (16:06 +0000)]
[project @ 2003-06-12 16:06:06 by simonmar]
Change the type of System.Cmd.rawSystem:

  rawSystem :: FilePath -> [String] -> IO ExitCode

and implement it properly on both Windows & Unix.  The intended
meaning is that the program is executed with *exactly* these
arguments.

We now re-use this rawSystem in the compiler itself (using it directly
from the library if __GLASGOW_HASKELL__ >= 601).

The previous implementation of SysTools.runSomething was broken on
4.08, because Posix.executeFile was broken.  However, implementing the
new rawSystem on 4.08 is tricky, because it uses the FFI marshalling
libraries which weren't present on 4.08.  Hence, bootstrapping from
4.08 is now not possible (it was already not possible on Windows).  It
could be made possible by importing enough FFI marshalling support,
but I won't bother doing that unless/until it is needed.

20 years ago[project @ 2003-06-12 15:15:23 by simonmar]
simonmar [Thu, 12 Jun 2003 15:15:23 +0000 (15:15 +0000)]
[project @ 2003-06-12 15:15:23 by simonmar]
exitWith should be using throwIO not throw.

20 years ago[project @ 2003-06-12 12:55:27 by ross]
ross [Thu, 12 Jun 2003 12:55:28 +0000 (12:55 +0000)]
[project @ 2003-06-12 12:55:27 by ross]
move portable newForeignPtr from GHC.ForeignPtr to Foreign.ForeignPtr

20 years ago[project @ 2003-06-12 10:59:00 by malcolm]
malcolm [Thu, 12 Jun 2003 10:59:00 +0000 (10:59 +0000)]
[project @ 2003-06-12 10:59:00 by malcolm]
... and add newForeignPtr_ for nhc98.

20 years ago[project @ 2003-06-12 10:55:57 by malcolm]
malcolm [Thu, 12 Jun 2003 10:55:57 +0000 (10:55 +0000)]
[project @ 2003-06-12 10:55:57 by malcolm]
For nhc98, define mallocForeignPtr and friends.

20 years ago[project @ 2003-06-12 10:53:15 by simonmar]
simonmar [Thu, 12 Jun 2003 10:53:16 +0000 (10:53 +0000)]
[project @ 2003-06-12 10:53:15 by simonmar]
Update to latest revision of the FFI spec:

  - foreignPtrToPtr is now unsafeForeignPtrToPtr
  - newForeignPtr_ added.

20 years ago[project @ 2003-06-12 10:31:29 by malcolm]
malcolm [Thu, 12 Jun 2003 10:31:29 +0000 (10:31 +0000)]
[project @ 2003-06-12 10:31:29 by malcolm]
For nhc98, temporarily make foreignPtrToPtr an alias for unsafeForeignPtrToPtr
until ghc and hugs catch up.

20 years ago[project @ 2003-06-05 13:42:51 by ralf]
ralf [Thu, 5 Jun 2003 13:42:51 +0000 (13:42 +0000)]
[project @ 2003-06-05 13:42:51 by ralf]
Add listify; other minor revisions.

20 years ago[project @ 2003-06-05 00:49:31 by diatchki]
diatchki [Thu, 5 Jun 2003 00:49:36 +0000 (00:49 +0000)]
[project @ 2003-06-05 00:49:31 by diatchki]
a huge commit.

overall changes
1. moved the new monad transformer library to its own branch as simon suggested
2. attempted to integrate it with the make system, which mostly works,
except "make install" tries to add the package _before_ copying the library files to
their location.  i don't understand what is going wrong, could someone take a look?

library specific
3. the library is now using the standard "MonadFix" class as sugested by ross.
   the instances are defined in each transformer file.
4. moved "Utils.hs" file to a "Private" directory to indicate that programs should not use it
5. removed the file "Types.hs", now the type for each transformer is defined in the relevant file.
6. added a few tests

20 years ago[project @ 2003-06-04 14:52:09 by ralf]
ralf [Wed, 4 Jun 2003 14:52:09 +0000 (14:52 +0000)]
[project @ 2003-06-04 14:52:09 by ralf]
Made gread a bit more robust; some renaming of new stuff; add more comments to implementations; added a bit more illustration of gunfold; added or/choice operators

20 years ago[project @ 2003-06-03 22:26:44 by diatchki]
diatchki [Tue, 3 Jun 2003 22:26:50 +0000 (22:26 +0000)]
[project @ 2003-06-03 22:26:44 by diatchki]
Added a first version of the new monad library (experimental).
Hopefully one day the "X" will disappear.

20 years ago[project @ 2003-06-02 14:32:14 by simonpj]
simonpj [Mon, 2 Jun 2003 14:32:14 +0000 (14:32 +0000)]
[project @ 2003-06-02 14:32:14 by simonpj]
Add (<++)

20 years ago[project @ 2003-06-01 17:20:02 by ralf]
ralf [Sun, 1 Jun 2003 17:20:02 +0000 (17:20 +0000)]
[project @ 2003-06-01 17:20:02 by ralf]
Minor revision; extension.
(customised gread/gshow for String; add a generic count to be used in the
definition gtypecount, gnodecount; added a mkF to use const mzero as default
and not as in the case of mkM; added a gmapF which is monadic but tries to
recover from failure while stile insisting on at least one successful
immediate subterm; cosmetics)

20 years ago[project @ 2003-05-30 21:59:44 by ralf]
ralf [Fri, 30 May 2003 21:59:44 +0000 (21:59 +0000)]
[project @ 2003-05-30 21:59:44 by ralf]
Major clean-up; would have been nice in GHC 6.00

(most of the changes concern documentation, types, coding style,
grouping, i.e., the interface is largely preserved modulo some
added exports; the only changed type is the one of synthesize;
the pathological function undefineds was removed from the interaces,
and the rarely used function branches was renamed to glength)

I also commit testsuite/.../Generics which has now quite
some meaninful examples in there. Also, the boilerplate is
now properly documented on http://www.cs.vu.nl/boilerplate/

All in all, this stuff starts to be useful and usable.
Great that it is supported by GHC!!!

Cheers,
Ralf

20 years ago[project @ 2003-05-30 09:19:39 by simonpj]
simonpj [Fri, 30 May 2003 09:19:40 +0000 (09:19 +0000)]
[project @ 2003-05-30 09:19:39 by simonpj]
Stop omitting Data.Generics from Haddockising,
now that suitable #ifdefs make it go through.

The #ifdefs mean that the documentation won't show
the exports (:+:) etc, until Haddock learns about them.

Merge to stable (but only this patch... not the earlier
post-fork changes to Data.Generics)

20 years ago[project @ 2003-05-29 17:37:17 by malcolm]
malcolm [Thu, 29 May 2003 17:37:19 +0000 (17:37 +0000)]
[project @ 2003-05-29 17:37:17 by malcolm]
For nhc98 only, export the basic C types non-abstractly.
This is due to a deficiency in the way newtypes are handled in
interface files - the compiler needs full information about the
newtype in order to pass values across the FFI.

20 years ago[project @ 2003-05-29 14:39:31 by sof]
sof [Thu, 29 May 2003 14:39:31 +0000 (14:39 +0000)]
[project @ 2003-05-29 14:39:31 by sof]
Support for interop'ing with .NET via FFI declarations along the
lines of what Hugs98.NET offers, see

 http://haskell.org/pipermail/cvs-hugs/2003-March/001723.html

for FFI decl details.

To enable, configure with --enable-dotnet + have a look
in ghc/rts/dotnet/Makefile for details of what tools are needed to
build the .NET interop layer (tools from VS.NET / Framework SDK.)

The commit doesn't include some library additions + wider-scale
testing is required before this extension can be regarded as available
for general use. 'foreign import dotnet' is currently only supported
by the C backend.

21 years ago[project @ 2003-05-27 16:57:09 by malcolm]
malcolm [Tue, 27 May 2003 16:57:12 +0000 (16:57 +0000)]
[project @ 2003-05-27 16:57:09 by malcolm]
Unbreak for nhc98, after the addition of FinalizerPtr as a type synonym,
and the change of Foreign.C.Types to export all newtypes abstract.

21 years ago[project @ 2003-05-27 09:48:13 by ralf]
ralf [Tue, 27 May 2003 09:48:13 +0000 (09:48 +0000)]
[project @ 2003-05-27 09:48:13 by ralf]
Simplified type of gunfold (removed last arg.)
And cosmetics.

21 years ago[project @ 2003-05-27 08:46:38 by malcolm]
malcolm [Tue, 27 May 2003 08:46:38 +0000 (08:46 +0000)]
[project @ 2003-05-27 08:46:38 by malcolm]
For nhc98, like hugs, re-export sum and product from the Prelude.

21 years ago[project @ 2003-05-27 08:03:46 by stolz]
stolz [Tue, 27 May 2003 08:03:47 +0000 (08:03 +0000)]
[project @ 2003-05-27 08:03:46 by stolz]
GCC 3.3 cpp wibbles

21 years ago[project @ 2003-05-23 10:48:55 by ross]
ross [Fri, 23 May 2003 10:48:55 +0000 (10:48 +0000)]
[project @ 2003-05-23 10:48:55 by ross]
replace deriving Eq with explicit instance (twice) because Haddock's
limited understanding of derived instances can't figure out these two.

21 years ago[project @ 2003-05-23 10:21:27 by simonmar]
simonmar [Fri, 23 May 2003 10:21:27 +0000 (10:21 +0000)]
[project @ 2003-05-23 10:21:27 by simonmar]
Hide this module in the Haddock docs.

21 years ago[project @ 2003-05-23 10:13:33 by ross]
ross [Fri, 23 May 2003 10:13:33 +0000 (10:13 +0000)]
[project @ 2003-05-23 10:13:33 by ross]
fix header comment

21 years ago[project @ 2003-05-23 10:12:28 by ross]
ross [Fri, 23 May 2003 10:12:28 +0000 (10:12 +0000)]
[project @ 2003-05-23 10:12:28 by ross]
hide GHC.PrimopWrappers from Haddock.

21 years ago[project @ 2003-05-23 08:59:46 by simonmar]
simonmar [Fri, 23 May 2003 08:59:46 +0000 (08:59 +0000)]
[project @ 2003-05-23 08:59:46 by simonmar]
Remove the words "A cool hack..." from the documentation of this
module, since they refer to the implementation, not the API :-)

21 years ago[project @ 2003-05-22 10:59:47 by ross]
ross [Thu, 22 May 2003 10:59:47 +0000 (10:59 +0000)]
[project @ 2003-05-22 10:59:47 by ross]
unbreak for Hugs

21 years ago[project @ 2003-05-22 09:55:56 by simonmar]
simonmar [Thu, 22 May 2003 09:55:56 +0000 (09:55 +0000)]
[project @ 2003-05-22 09:55:56 by simonmar]
Commit an off-by-one fix that I forgot about.

Fixes SF bug #741600.

21 years ago[project @ 2003-05-22 09:40:04 by ross]
ross [Thu, 22 May 2003 09:40:04 +0000 (09:40 +0000)]
[project @ 2003-05-22 09:40:04 by ross]
export architecture-dependent types opaquely.

21 years ago[project @ 2003-05-22 08:24:32 by chak]
chak [Thu, 22 May 2003 08:24:33 +0000 (08:24 +0000)]
[project @ 2003-05-22 08:24:32 by chak]
Added a `FinalizerPtr' synonym as in the FFI Addendum (RC 10).

** ATTENTION **

This will break the "#ifdef __NHC__" and "#ifdef __HUGS__" variants of
`ForeignPtr'.  See `GHC/ForeignPtr.hs' for the definitions.

21 years ago[project @ 2003-05-22 08:21:49 by ross]
ross [Thu, 22 May 2003 08:21:49 +0000 (08:21 +0000)]
[project @ 2003-05-22 08:21:49 by ross]
add Eq instance (explicit, so Haddock won't be confused)

21 years ago[project @ 2003-05-22 08:20:38 by ross]
ross [Thu, 22 May 2003 08:20:38 +0000 (08:20 +0000)]
[project @ 2003-05-22 08:20:38 by ross]
trim import

21 years ago[project @ 2003-05-22 06:37:08 by chak]
chak [Thu, 22 May 2003 06:37:08 +0000 (06:37 +0000)]
[project @ 2003-05-22 06:37:08 by chak]
The FFI Addendum requires `Foreign' to re-export `Data.Bits'.

21 years ago[project @ 2003-05-21 16:31:59 by ross]
ross [Wed, 21 May 2003 16:31:59 +0000 (16:31 +0000)]
[project @ 2003-05-21 16:31:59 by ross]
add finalizerFree :: FunPtr (Ptr a -> IO ())

21 years ago[project @ 2003-05-20 09:44:08 by stolz]
stolz [Tue, 20 May 2003 09:44:08 +0000 (09:44 +0000)]
[project @ 2003-05-20 09:44:08 by stolz]
Add missing 'Constr' for conOf/consOf in examples

21 years ago[project @ 2003-05-19 16:48:18 by ross]
ross [Mon, 19 May 2003 16:48:20 +0000 (16:48 +0000)]
[project @ 2003-05-19 16:48:18 by ross]
non-GHC (and non-NHC): simplistic implementation of byte array I/O.

21 years ago[project @ 2003-05-17 00:11:29 by ross]
ross [Sat, 17 May 2003 00:11:29 +0000 (00:11 +0000)]
[project @ 2003-05-17 00:11:29 by ross]
Rename per-package configuration files from $(PACKAGE).conf.* to
package.conf.*, making them easier to find (since each package is
in a separate directory anyway).

21 years ago[project @ 2003-05-16 10:14:22 by simonmar]
simonmar [Fri, 16 May 2003 10:14:22 +0000 (10:14 +0000)]
[project @ 2003-05-16 10:14:22 by simonmar]
Now that we have auto packages, it makes sense to keep all the
interfaces for hierarchical libraries in the same directory tree.  So
now, instead of putting interfaces for package P in $libdir/imports/P,
we put them all in $libdir/imports.

Interfaces for old non-auto non-hierarchical packages now go in
$libdir/hslibs-imports/P for package P.

21 years ago[project @ 2003-05-14 17:31:47 by ross]
ross [Wed, 14 May 2003 17:31:48 +0000 (17:31 +0000)]
[project @ 2003-05-14 17:31:47 by ross]
doc tweaks

21 years ago[project @ 2003-05-14 09:12:27 by ross]
ross [Wed, 14 May 2003 09:12:29 +0000 (09:12 +0000)]
[project @ 2003-05-14 09:12:27 by ross]
comments

21 years ago[project @ 2003-05-14 09:11:43 by ross]
ross [Wed, 14 May 2003 09:11:43 +0000 (09:11 +0000)]
[project @ 2003-05-14 09:11:43 by ross]
hide Foreign.Concurrent from Hugs

21 years ago[project @ 2003-05-13 11:42:47 by simonpj]
simonpj [Tue, 13 May 2003 11:42:47 +0000 (11:42 +0000)]
[project @ 2003-05-13 11:42:47 by simonpj]
Generalise the type of listens slightly; a suggestion from Tom Pledger

21 years ago[project @ 2003-05-12 10:16:22 by ross]
ross [Mon, 12 May 2003 10:16:28 +0000 (10:16 +0000)]
[project @ 2003-05-12 10:16:22 by ross]
documentation only: tag some things as "GHC only".

21 years ago[project @ 2003-05-12 10:15:00 by ross]
ross [Mon, 12 May 2003 10:15:00 +0000 (10:15 +0000)]
[project @ 2003-05-12 10:15:00 by ross]
mark Text.Read as non-portable, and make a bit more available in Hugs.

21 years ago[project @ 2003-05-12 10:12:52 by ross]
ross [Mon, 12 May 2003 10:12:55 +0000 (10:12 +0000)]
[project @ 2003-05-12 10:12:52 by ross]
Hugs only (I hope): add unboxed arrays to Hugs

21 years ago[project @ 2003-05-12 08:57:55 by ross]
ross [Mon, 12 May 2003 08:57:55 +0000 (08:57 +0000)]
[project @ 2003-05-12 08:57:55 by ross]
cosmetic change

21 years ago[project @ 2003-05-12 08:55:53 by ross]
ross [Mon, 12 May 2003 08:55:53 +0000 (08:55 +0000)]
[project @ 2003-05-12 08:55:53 by ross]
remove #ifndef __HUGS__

21 years ago[project @ 2003-05-12 08:54:21 by ross]
ross [Mon, 12 May 2003 08:54:21 +0000 (08:54 +0000)]
[project @ 2003-05-12 08:54:21 by ross]
add Haddock markers

21 years ago[project @ 2003-05-12 08:48:09 by ross]
ross [Mon, 12 May 2003 08:48:09 +0000 (08:48 +0000)]
[project @ 2003-05-12 08:48:09 by ross]
some re-arrangement for the benefit of Hugs.

21 years ago[project @ 2003-05-08 16:06:41 by ross]
ross [Thu, 8 May 2003 16:06:41 +0000 (16:06 +0000)]
[project @ 2003-05-08 16:06:41 by ross]
avoid a C compiler warning about arithmetic with void *

21 years ago[project @ 2003-05-05 19:44:28 by ross]
ross [Mon, 5 May 2003 19:44:28 +0000 (19:44 +0000)]
[project @ 2003-05-05 19:44:28 by ross]
non-GHC: fill out the Bits instances for Int and Integer, and make them
work with Hugs.

21 years ago[project @ 2003-04-30 08:36:21 by simonmar]
simonmar [Wed, 30 Apr 2003 08:36:21 +0000 (08:36 +0000)]
[project @ 2003-04-30 08:36:21 by simonmar]
When doing hGetChar on a block-buffered handle, don't wait for the
buffer to be completely full before returning a character.  This
behaviour seems more useful, and matches what hGetLine and
hGetContents do.

Without this, to do an unbuffered read you have to set the buffering
on the Handle to NoBuffering, which adversely affects the performance
of writes.  With this change, there is now no difference between line
buffering and block buffering for read operations.

Possibly fillReadBuffer can now be simplified, since the is_line
parameter is always True.  However, this is a delicate part of the IO
library, and I don't want to remove the possiblity of forcing a
complete buffer-fill in the future.

21 years ago[project @ 2003-04-28 09:18:29 by ross]
ross [Mon, 28 Apr 2003 09:18:29 +0000 (09:18 +0000)]
[project @ 2003-04-28 09:18:29 by ross]
add Text.ParserCombinators.ReadP, Text.ParserCombinators.ReadPrec and
Text.Read.Lex to Hugs.  (But they're not used by Read, because that
would make the Prelude non-H98).

21 years ago[project @ 2003-04-28 09:16:47 by ross]
ross [Mon, 28 Apr 2003 09:16:48 +0000 (09:16 +0000)]
[project @ 2003-04-28 09:16:47 by ross]
portability fixes, plus marking these as non-portable (uses forall).

21 years ago[project @ 2003-04-25 17:43:06 by ross]
ross [Fri, 25 Apr 2003 17:43:06 +0000 (17:43 +0000)]
[project @ 2003-04-25 17:43:06 by ross]
tiny haddock fix

21 years ago[project @ 2003-04-25 17:42:26 by ross]
ross [Fri, 25 Apr 2003 17:42:26 +0000 (17:42 +0000)]
[project @ 2003-04-25 17:42:26 by ross]
add System.Info to Hugs

21 years ago[project @ 2003-04-25 10:24:58 by ross]
ross [Fri, 25 Apr 2003 10:24:58 +0000 (10:24 +0000)]
[project @ 2003-04-25 10:24:58 by ross]
add Data.Array.Diff to Hugs

21 years ago[project @ 2003-04-25 10:24:20 by ross]
ross [Fri, 25 Apr 2003 10:24:20 +0000 (10:24 +0000)]
[project @ 2003-04-25 10:24:20 by ross]
non-GHC: remove instances for Word

21 years ago[project @ 2003-04-25 10:23:29 by simonmar]
simonmar [Fri, 25 Apr 2003 10:23:29 +0000 (10:23 +0000)]
[project @ 2003-04-25 10:23:29 by simonmar]
doc fixes

21 years ago[project @ 2003-04-24 12:25:26 by malcolm]
malcolm [Thu, 24 Apr 2003 12:25:28 +0000 (12:25 +0000)]
[project @ 2003-04-24 12:25:26 by malcolm]
Add instances of Data.Bits.Bits for Int/Word[8,16,32,64] in a different
way.  The module Data.Bits is only available from the base package,
which is normally added to the link line *before* the standard libraries,
hence if the instances are in the latter, you get link errors.  So move
the instances into the base package where they belong, in NHC.SizedTypes.

21 years ago[project @ 2003-04-23 14:36:26 by malcolm]
malcolm [Wed, 23 Apr 2003 14:36:26 +0000 (14:36 +0000)]
[project @ 2003-04-23 14:36:26 by malcolm]
Add Data.HashTable, Data.Monoid, and Data.Tree to the nhc98 build, and
re-instate Data.Dynamic, which now uses Data.HashTable.

21 years ago[project @ 2003-04-23 14:29:51 by malcolm]
malcolm [Wed, 23 Apr 2003 14:29:51 +0000 (14:29 +0000)]
[project @ 2003-04-23 14:29:51 by malcolm]
Tweak #ifdefs to make it compile with nhc98.

21 years ago[project @ 2003-04-23 13:22:16 by simonmar]
simonmar [Wed, 23 Apr 2003 13:22:16 +0000 (13:22 +0000)]
[project @ 2003-04-23 13:22:16 by simonmar]
Doc wibble.

21 years ago[project @ 2003-04-23 10:27:53 by simonmar]
simonmar [Wed, 23 Apr 2003 10:27:53 +0000 (10:27 +0000)]
[project @ 2003-04-23 10:27:53 by simonmar]
hGetArray/hPutArray with a count argument of zero now just return
doing nothing.  This brings them into line with hGetBuf/hPutBuf and
fixes a bug in Data.PackedString.hPutPS which fails on an empty string.

21 years ago[project @ 2003-04-22 10:20:30 by malcolm]
malcolm [Tue, 22 Apr 2003 10:20:30 +0000 (10:20 +0000)]
[project @ 2003-04-22 10:20:30 by malcolm]
Exclude Data.Dynamic from the nhc98 build now that it no longer
compiles.  (Need to investigate getting Data.HashTable to work.)

21 years ago[project @ 2003-04-22 09:21:34 by ross]
ross [Tue, 22 Apr 2003 09:21:34 +0000 (09:21 +0000)]
[project @ 2003-04-22 09:21:34 by ross]
Hugs only: minor re-arrangement of ifdefs.

21 years ago[project @ 2003-04-22 09:19:24 by ross]
ross [Tue, 22 Apr 2003 09:19:24 +0000 (09:19 +0000)]
[project @ 2003-04-22 09:19:24 by ross]
remove an ifdef'd out commented out import.

21 years ago[project @ 2003-04-21 16:32:39 by ross]
ross [Mon, 21 Apr 2003 16:32:39 +0000 (16:32 +0000)]
[project @ 2003-04-21 16:32:39 by ross]
adjust imports for Hugs's benefit.

21 years ago[project @ 2003-04-21 16:32:05 by ross]
ross [Mon, 21 Apr 2003 16:32:05 +0000 (16:32 +0000)]
[project @ 2003-04-21 16:32:05 by ross]
Hugs only: Key is defined in Hugs.Prelude (because it needs Dynamic)

21 years ago[project @ 2003-04-17 16:51:43 by simonpj]
simonpj [Thu, 17 Apr 2003 16:51:43 +0000 (16:51 +0000)]
[project @ 2003-04-17 16:51:43 by simonpj]
Add lots of new generics stuff

21 years ago[project @ 2003-04-17 15:23:37 by simonpj]
simonpj [Thu, 17 Apr 2003 15:23:37 +0000 (15:23 +0000)]
[project @ 2003-04-17 15:23:37 by simonpj]
----------------------------------
Implement Typeable properly
----------------------------------

1.  Add 'deriving' for Typeable class. So you can say

data T a b = .... deriving( Typeable )

    At the moment you only get this if you ask for it. If you say
    nothing you get nothing.

2.  Implement Typeable better, with proper O(1) comparison of
    type representations

3.  Add the 'cast' operation described in 'Scrap your boilerplate'
    and use it.

4.  Consequence: need to move the definition of IOArray from
    Data.Array.IO.Internals to GHC.IOBase, where it joins IORef.
    This is necssary so that HashTable can be low down in the compilation
    hierarchy, and hence so can Dynamic.

WARNING: I'm not certain the imports in HashTable and Dynamic
 will all be right for Hugs and NHC. I hope you can
    fix them up.

21 years ago[project @ 2003-04-17 15:17:07 by simonpj]
simonpj [Thu, 17 Apr 2003 15:17:12 +0000 (15:17 +0000)]
[project @ 2003-04-17 15:17:07 by simonpj]
Comments and imports

21 years ago[project @ 2003-04-17 13:26:59 by simonmar]
simonmar [Thu, 17 Apr 2003 13:26:59 +0000 (13:26 +0000)]
[project @ 2003-04-17 13:26:59 by simonmar]
Doc wibbles

21 years ago[project @ 2003-04-17 12:58:14 by mthomas]
mthomas [Thu, 17 Apr 2003 12:58:14 +0000 (12:58 +0000)]
[project @ 2003-04-17 12:58:14 by mthomas]
Fix "System/Posix/Internals.hs:273: Malformed entity string".

21 years ago[project @ 2003-04-17 10:44:59 by simonmar]
simonmar [Thu, 17 Apr 2003 10:44:59 +0000 (10:44 +0000)]
[project @ 2003-04-17 10:44:59 by simonmar]
Add a hash table implementation.  This is an implementation of Dynamic
Hash Tables, transliterated from the code in GHC's RTS into Haskell.
I'd like to say it looks nicer, and well, maybe it does a little.

Comments on the interface are welcome.

This hash table implementation will be used by the new Typeable
framework to do hash-consing and fast comparison of TypeRep values.

21 years ago[project @ 2003-04-17 07:26:12 by simonpj]
simonpj [Thu, 17 Apr 2003 07:26:12 +0000 (07:26 +0000)]
[project @ 2003-04-17 07:26:12 by simonpj]
Better Haddock documentation