simonpj [Fri, 20 Aug 2004 08:45:52 +0000 (08:45 +0000)]
[project @ 2004-08-20 08:45:52 by simonpj]
Better handling of overflow conditions for Enum Int.
(I also reduced the use of RULES and deforestation
for the [a,b..] case, because it took a lot of code
for a case that isn't common.
malcolm [Thu, 19 Aug 2004 10:54:34 +0000 (10:54 +0000)]
[project @ 2004-08-19 10:54:34 by malcolm]
Missing import for nhc98.
simonmar [Thu, 19 Aug 2004 08:23:01 +0000 (08:23 +0000)]
[project @ 2004-08-19 08:23:01 by simonmar]
Add a new Haddock section "Pre-defined directories"
krasimir [Wed, 18 Aug 2004 17:48:44 +0000 (17:48 +0000)]
[project @ 2004-08-18 17:48:44 by krasimir]
add getUserDocumentsDirectory function
simonmar [Wed, 18 Aug 2004 09:34:02 +0000 (09:34 +0000)]
[project @ 2004-08-18 09:34:02 by simonmar]
Add Haddock comments for getHomeDirectory/getAppUserDataDirectory
malcolm [Wed, 18 Aug 2004 09:23:19 +0000 (09:23 +0000)]
[project @ 2004-08-18 09:23:19 by malcolm]
Add versions of getHomeDirectory and getAppUserDataDirectory for nhc98.
(Note: implementation still missing for Hugs.)
krasimir [Tue, 17 Aug 2004 16:48:09 +0000 (16:48 +0000)]
[project @ 2004-08-17 16:48:09 by krasimir]
Add getHomeDirectory and getAppUserDataDirectory functions
simonmar [Mon, 16 Aug 2004 11:08:47 +0000 (11:08 +0000)]
[project @ 2004-08-16 11:08:47 by simonmar]
wibble
simonmar [Mon, 16 Aug 2004 11:07:31 +0000 (11:07 +0000)]
[project @ 2004-08-16 11:07:31 by simonmar]
More ugly hacks related to the config.h change. I'm beginning to
think maybe this wasn't such a great idea.
simonmar [Mon, 16 Aug 2004 09:31:15 +0000 (09:31 +0000)]
[project @ 2004-08-16 09:31:15 by simonmar]
#ifdefery to work around change in name of config.h
simonmar [Fri, 13 Aug 2004 13:29:07 +0000 (13:29 +0000)]
[project @ 2004-08-13 13:29:00 by simonmar]
Changes required be merge of backend-hacking-branch. Mostly config.h
==> ghcconfig.h.
simonmar [Fri, 13 Aug 2004 10:55:06 +0000 (10:55 +0000)]
[project @ 2004-08-13 10:55:06 by simonmar]
Add a Todo
simonmar [Fri, 13 Aug 2004 10:54:15 +0000 (10:54 +0000)]
[project @ 2004-08-13 10:54:15 by simonmar]
Update copyright date
simonmar [Fri, 13 Aug 2004 08:50:32 +0000 (08:50 +0000)]
[project @ 2004-08-13 08:50:32 by simonmar]
work around stricter CPP in GCC 3.4.1
simonpj [Tue, 10 Aug 2004 11:35:24 +0000 (11:35 +0000)]
[project @ 2004-08-10 11:35:24 by simonpj]
Add a Haddock note about dynamic linking
simonmar [Mon, 9 Aug 2004 12:00:34 +0000 (12:00 +0000)]
[project @ 2004-08-09 12:00:34 by simonmar]
whitespace changes to the header only, for new compatibility with new Haddock
simonmar [Mon, 9 Aug 2004 10:04:33 +0000 (10:04 +0000)]
[project @ 2004-08-09 10:04:33 by simonmar]
quotes: use an appostrophe at both ends rather than a grave accent at
the front and an apostrophe at the end.
Previously
`quotes'
now
'quotes'
the latter is more correct. See
http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html fpr details.
panne [Tue, 3 Aug 2004 19:36:41 +0000 (19:36 +0000)]
[project @ 2004-08-03 19:36:41 by panne]
Fixed spelling of "http-equiv" attribute
MERGE TO STABLE
ross [Fri, 30 Jul 2004 23:29:41 +0000 (23:29 +0000)]
[project @ 2004-07-30 23:29:41 by ross]
copyFile is GHC-only at the moment
krasimir [Fri, 30 Jul 2004 22:17:44 +0000 (22:17 +0000)]
[project @ 2004-07-30 22:17:44 by krasimir]
fix
krasimir [Fri, 30 Jul 2004 20:33:54 +0000 (20:33 +0000)]
[project @ 2004-07-30 20:33:54 by krasimir]
add copyFile to the export list
krasimir [Fri, 30 Jul 2004 06:16:00 +0000 (06:16 +0000)]
[project @ 2004-07-30 06:16:00 by krasimir]
add copyFile function
ross [Wed, 28 Jul 2004 10:32:12 +0000 (10:32 +0000)]
[project @ 2004-07-28 10:32:11 by ross]
haddock food
ross [Tue, 27 Jul 2004 10:35:55 +0000 (10:35 +0000)]
[project @ 2004-07-27 10:35:54 by ross]
haddock fodder
ross [Mon, 26 Jul 2004 17:22:43 +0000 (17:22 +0000)]
[project @ 2004-07-26 17:22:41 by ross]
a few odd docs
ross [Mon, 26 Jul 2004 13:26:46 +0000 (13:26 +0000)]
[project @ 2004-07-26 13:26:41 by ross]
docs only
ross [Fri, 23 Jul 2004 15:32:00 +0000 (15:32 +0000)]
[project @ 2004-07-23 15:31:59 by ross]
To make Text.Regex.Posix work with Hugs, move cbits/regex/regex.h under
include, where Hugs can find it.
ross [Fri, 23 Jul 2004 15:26:06 +0000 (15:26 +0000)]
[project @ 2004-07-23 15:26:06 by ross]
tweak comment
ross [Fri, 23 Jul 2004 13:24:05 +0000 (13:24 +0000)]
[project @ 2004-07-23 13:24:04 by ross]
docs only
ross [Fri, 23 Jul 2004 11:34:33 +0000 (11:34 +0000)]
[project @ 2004-07-23 11:34:31 by ross]
docs only
panne [Sun, 11 Jul 2004 09:20:07 +0000 (09:20 +0000)]
[project @ 2004-07-11 09:20:07 by panne]
Use "flat" names for the type constructors of Ptr/StablePtr/IORef. This might be
debatable, but at least it is consistent with the rest of the types.
panne [Thu, 1 Jul 2004 18:05:00 +0000 (18:05 +0000)]
[project @ 2004-07-01 18:05:00 by panne]
Increase heap size and stack size when building via hbc
malcolm [Thu, 1 Jul 2004 14:49:11 +0000 (14:49 +0000)]
[project @ 2004-07-01 14:49:11 by malcolm]
Heap-profiling build bootstrapped with nhc98 requires more heap.
malcolm [Thu, 1 Jul 2004 13:25:09 +0000 (13:25 +0000)]
[project @ 2004-07-01 13:25:09 by malcolm]
Revert from common heap/stack options to per-package options. Since
hbc's runtime requirements are on occasion so much larger ghc/nhc98,
break out EXTRA_HBC_FLAGS as a separate variable.
panne [Tue, 29 Jun 2004 19:10:47 +0000 (19:10 +0000)]
[project @ 2004-06-29 19:10:47 by panne]
Centralized compiler differences for requesting additional heap/stack in a
single place. Only tested for bootstrapping via hbc, and this needs 170M heap
for Language/Haskell/Parser.hs. There seems to be a "small" space leak here...
:-]
ross [Fri, 25 Jun 2004 10:42:48 +0000 (10:42 +0000)]
[project @ 2004-06-25 10:42:48 by ross]
more Ptr/FunPtr documentation
simonmar [Wed, 23 Jun 2004 09:47:47 +0000 (09:47 +0000)]
[project @ 2004-06-23 09:47:47 by simonmar]
Add documentation from the FFI spec.
ross [Tue, 22 Jun 2004 12:45:55 +0000 (12:45 +0000)]
[project @ 2004-06-22 12:45:55 by ross]
Change the interface (but not the implementation) to match the FFI spec:
* added charIsRepresentable, *CAString and *CWString
* currently (and in violation of the spec), fooCString = fooCAString
* The WString versions use UTF-16 under Windows and UTF-32 elsewhere
(valid only if the compiler defines __STDC_ISO_10646__).
malcolm [Wed, 16 Jun 2004 09:50:25 +0000 (09:50 +0000)]
[project @ 2004-06-16 09:50:25 by malcolm]
Typo.
panne [Tue, 15 Jun 2004 21:07:23 +0000 (21:07 +0000)]
[project @ 2004-06-15 21:07:23 by panne]
Yet another fix for the fact that CTime is not an instance of Integral anymore,
malcolm [Tue, 15 Jun 2004 10:29:12 +0000 (10:29 +0000)]
[project @ 2004-06-15 10:29:12 by malcolm]
Note dependency of Foreign.C on Foreign.C.*
malcolm [Tue, 15 Jun 2004 10:20:05 +0000 (10:20 +0000)]
[project @ 2004-06-15 10:20:05 by malcolm]
Add missing instances of Data.Bits.Bits for nhc98.
malcolm [Mon, 14 Jun 2004 13:28:52 +0000 (13:28 +0000)]
[project @ 2004-06-14 13:28:52 by malcolm]
Solaris/nhc98 fixes: HAVE_TZNAME rather than HAVE_TM_ZONE, and need a
"time.h" specification on every foreign import.
panne [Sun, 13 Jun 2004 21:03:47 +0000 (21:03 +0000)]
[project @ 2004-06-13 21:03:46 by panne]
Changes related to arithmetic types:
* Renamed macros NUMERIC_FOO to ARITHMETIC_FOO to match C99-speak
* ARITHMETIC_TYPEs now have a Real instance, otherwise they are quite useless.
Note that this differs from the FFI spec, but the spec should very probably
changed in this respect.
* Some changes to fix the wrong assumption that CTime/CClock are integral types,
C99 in fact guarantees only that they are arithmetic types. This has been
accomplished by using
realToInteger = round . realToFrac :: Real a => a -> Integer
instead of fromIntegral for CTime/CClock. I'm not sure if we could do better,
going via Double seems to be overkill, but I couldn't think of a better way.
GHC could e.g. use RULES here. Improvements welcome.
panne [Sun, 13 Jun 2004 20:26:03 +0000 (20:26 +0000)]
[project @ 2004-06-13 20:26:03 by panne]
Added missing dependencies of Haskell files to header files they include
panne [Sun, 13 Jun 2004 17:16:40 +0000 (17:16 +0000)]
[project @ 2004-06-13 17:16:40 by panne]
The FFI report does not mention that CClock and CTime have instances for
Bounded, Real, Integral, and Bits.
panne [Sat, 12 Jun 2004 12:13:12 +0000 (12:13 +0000)]
[project @ 2004-06-12 12:13:12 by panne]
timezone fix by Antony Courtney
simonmar [Wed, 2 Jun 2004 16:17:20 +0000 (16:17 +0000)]
[project @ 2004-06-02 16:17:20 by simonmar]
Add a comment about fdGetMode, which doesn't work properly on Windows
simonmar [Wed, 2 Jun 2004 16:09:58 +0000 (16:09 +0000)]
[project @ 2004-06-02 16:09:58 by simonmar]
__hscore_PrelHandle_{send,recv}: make these mingw32-only
simonmar [Wed, 2 Jun 2004 16:07:17 +0000 (16:07 +0000)]
[project @ 2004-06-02 16:07:17 by simonmar]
- Win32: when using the threaded RTS, bypass the Async IO stuff and
just make blocking calls to read()/write().
This gives a significant performance boost to programs doing lots of
multithreaded I/O: in fact, a test program I have which does I/O
over 500 pipes simultaneously goes twice as fast with this change,
and is even faster than the non-threaded RTS (Windows only - Unix
changes are in the pipeline too).
- openFd: take an extra parameter to specify socketness of the file
descriptor rather than assuming that all streams are sockets. Some
streams (eg. pipes) aren't sockets.
simonmar [Wed, 2 Jun 2004 16:00:02 +0000 (16:00 +0000)]
[project @ 2004-06-02 16:00:02 by simonmar]
Add __hscore_PrelHandle_{send,recv}
simonmar [Wed, 2 Jun 2004 12:35:11 +0000 (12:35 +0000)]
[project @ 2004-06-02 12:35:11 by simonmar]
The lock arrays are too small on Windows, leading to buffer overruns
and crashes when a program opens too many files.
The problem is that on Windows, we shouldn't use FD_SETSIZE to get the
max number of file descriptors: this is set to 64 in the mingw
includes. The real maximum is 2048 (according to the crt sources), so
we now hardwire that in.
Also, put in a runtime check that we aren't overruning this array.
MERGE TO STABLE
simonpj [Thu, 27 May 2004 11:32:03 +0000 (11:32 +0000)]
[project @ 2004-05-27 11:32:03 by simonpj]
Inline the default method for newArray; big perf boost; comments with the pragma
simonmar [Tue, 25 May 2004 09:27:16 +0000 (09:27 +0000)]
[project @ 2004-05-25 09:27:16 by simonmar]
Small performance hack in maxBound::Word.
simonpj [Tue, 25 May 2004 09:11:57 +0000 (09:11 +0000)]
[project @ 2004-05-25 09:11:57 by simonpj]
Remove spaces around the "%" when showing ratios.
This is not absolutely strictly according to the H98 report,
but it was suggested by Doug McIlroy
According to the standard prelude, a list of Ratios prints like
this: [1 % 1,1 % 2,1 % 3,1 % 4], which strongly suggests the
grouping [1 % (1,1) % (2,1) % (3,1) % 4].
Even standing alone outside of lists, the style is at odds with
mathematical custom. When did you last see 1/2 written as 1 / 2?
malcolm [Mon, 10 May 2004 09:22:59 +0000 (09:22 +0000)]
[project @ 2004-05-10 09:22:59 by malcolm]
RawSystem inclusion belongs inside the __GLASGOW_HASKELL__ ifdef.
dons [Sun, 9 May 2004 01:36:32 +0000 (01:36 +0000)]
[project @ 2004-05-09 01:36:32 by dons]
When .hc bootstrapping, don't build the Concurrent_stubs
wolfgang [Thu, 6 May 2004 12:27:47 +0000 (12:27 +0000)]
[project @ 2004-05-06 12:27:47 by wolfgang]
Make the documentation and the error messages match the way the threaded
RTS is used nowadays
(the -threaded flag to ghc rather than ./configure --enable-threaded-rts)
MERGE TO STABLE
simonmar [Thu, 6 May 2004 08:44:52 +0000 (08:44 +0000)]
[project @ 2004-05-06 08:44:52 by simonmar]
Move the definition of rawSystem into a separate file which we
#include in the places it is needed. This is slightly better than
copying the code, since we now need it in three places
(ghc/utils/runghc is the 3rd).
ross [Fri, 23 Apr 2004 18:13:07 +0000 (18:13 +0000)]
[project @ 2004-04-23 18:13:07 by ross]
Hugs: use the same version of fixIO as GHC
simonmar [Tue, 20 Apr 2004 15:52:18 +0000 (15:52 +0000)]
[project @ 2004-04-20 15:52:18 by simonmar]
New version of fixIO which does eager blackholing.
simonmar [Tue, 20 Apr 2004 15:49:58 +0000 (15:49 +0000)]
[project @ 2004-04-20 15:49:58 by simonmar]
- comments on INLINability of unsafePerformIO
- change unsafeInterleaveIO from NOINLINE to INLINE(!) we believe
this is safe. Interestingly, there's now a good reason to use
unsafeInterleaveIO.
simonmar [Tue, 20 Apr 2004 09:18:46 +0000 (09:18 +0000)]
[project @ 2004-04-20 09:18:46 by simonmar]
Fix a file descriptor leak in openFile: if openFd fails, then we
weren't closing the newly created descriptor.
simonmar [Wed, 14 Apr 2004 09:01:18 +0000 (09:01 +0000)]
[project @ 2004-04-14 09:01:18 by simonmar]
indent: don't use tab characters
panne [Tue, 6 Apr 2004 08:54:02 +0000 (08:54 +0000)]
[project @ 2004-04-06 08:54:02 by panne]
Tiny fix in Haddock markup
simonpj [Mon, 5 Apr 2004 08:21:39 +0000 (08:21 +0000)]
[project @ 2004-04-05 08:21:39 by simonpj]
Use consistent capitalisation
ross [Tue, 30 Mar 2004 17:54:28 +0000 (17:54 +0000)]
[project @ 2004-03-30 17:54:28 by ross]
fix a warning
ross [Tue, 30 Mar 2004 17:02:59 +0000 (17:02 +0000)]
[project @ 2004-03-30 17:02:59 by ross]
track Data/Generics/* twists
ralf [Tue, 30 Mar 2004 15:31:35 +0000 (15:31 +0000)]
[project @ 2004-03-30 15:31:35 by ralf]
We decided that we want the gunfold primitive back.
This avoids some hassle with bottoms and strict datatypes.
The compiler now also derives gunfold.
panne [Tue, 30 Mar 2004 07:05:46 +0000 (07:05 +0000)]
[project @ 2004-03-30 07:05:46 by panne]
Added withArrayLen and withArrayLen0
panne [Sat, 27 Mar 2004 14:15:24 +0000 (14:15 +0000)]
[project @ 2004-03-27 14:15:24 by panne]
This package is named "base", not "core".
panne [Sat, 27 Mar 2004 13:18:12 +0000 (13:18 +0000)]
[project @ 2004-03-27 13:18:12 by panne]
* Merged Martin Sj\e-A?gren's patch for multiline descriptions\e-b
* Nuked some TABs in favour of space + some small reformatting
* Updated copyright
simonmar [Wed, 24 Mar 2004 16:59:51 +0000 (16:59 +0000)]
[project @ 2004-03-24 16:59:51 by simonmar]
Add caveat about finalizers (don't refer to Handles from finalizers).
malcolm [Mon, 22 Mar 2004 14:48:57 +0000 (14:48 +0000)]
[project @ 2004-03-22 14:48:56 by malcolm]
For nhc98, at last include the Typeable macros which define the instance decls.
ralf [Sun, 21 Mar 2004 19:07:01 +0000 (19:07 +0000)]
[project @ 2004-03-21 19:07:00 by ralf]
Implemented renaming for Data.Typeable according to
http://www.haskell.org//pipermail/libraries/2004-March/001846.html
ross [Sat, 20 Mar 2004 18:26:41 +0000 (18:26 +0000)]
[project @ 2004-03-20 18:26:40 by ross]
change instances of Typeable to macros
ross [Sat, 20 Mar 2004 13:31:06 +0000 (13:31 +0000)]
[project @ 2004-03-20 13:31:06 by ross]
revert a couple of tcnames for greater consistency (fixes dynamic001).
ross [Sat, 20 Mar 2004 12:42:28 +0000 (12:42 +0000)]
[project @ 2004-03-20 12:42:27 by ross]
Comments (and deleted some of the blank lines Ralf is so fond of).
ross [Sat, 20 Mar 2004 02:37:18 +0000 (02:37 +0000)]
[project @ 2004-03-20 02:37:18 by ross]
clean up the TypeableN stuff a bit: GHC uses overlapping instances;
everyone else uses explicit instances using provided defaults.
Macros paper over the difference.
panne [Fri, 19 Mar 2004 20:31:50 +0000 (20:31 +0000)]
[project @ 2004-03-19 20:31:50 by panne]
HACK: Unbreak the Hugs build again, Typeable left the realm of Haskell98 one
more time. I slowly doubt if this module belongs to the "base" package at
all... If it stays there, things should better be tested with Hugs and nh98
before committing, the latter build probably breaks, too.
simonmar [Fri, 19 Mar 2004 11:00:02 +0000 (11:00 +0000)]
[project @ 2004-03-19 11:00:02 by simonmar]
- fix one performance bug: we weren't updating the bucket count when
expanding the hash table, so too many expansions were happening.
- slight improvement to hashString: if we use foldl rather than foldr,
the resulting code uses an accumulating parameter and runs in linear
stack space.
simonmar [Fri, 19 Mar 2004 10:45:42 +0000 (10:45 +0000)]
[project @ 2004-03-19 10:45:42 by simonmar]
Bugfix for insert (from the missing-prime class of bugs)
ralf [Wed, 17 Mar 2004 23:22:51 +0000 (23:22 +0000)]
[project @ 2004-03-17 23:22:51 by ralf]
Installed genneric instances for Typeable1, ..., Typeable7.
Updated Data/Generics/Instances.hs accordingly.
ralf [Tue, 16 Mar 2004 15:19:36 +0000 (15:19 +0000)]
[project @ 2004-03-16 15:19:36 by ralf]
I thought that I removed that one.
ralf [Tue, 16 Mar 2004 13:46:08 +0000 (13:46 +0000)]
[project @ 2004-03-16 13:46:07 by ralf]
Some more refactoring and renaming to be aligned with the boilerplate II
paper. Removed the weird module Generics.Reify, the code of which still
lives in testsuite (see example reify.hs). One will also need to cvs upd
the compiler which again changed slightly with regard to deriving Data.
ross [Tue, 16 Mar 2004 10:04:17 +0000 (10:04 +0000)]
[project @ 2004-03-16 10:04:17 by ross]
comment typo
malcolm [Mon, 8 Mar 2004 10:22:09 +0000 (10:22 +0000)]
[project @ 2004-03-08 10:22:09 by malcolm]
nhc98 (built by ghc/solaris) needs more stack to make System.Time.
malcolm [Fri, 5 Mar 2004 18:00:36 +0000 (18:00 +0000)]
[project @ 2004-03-05 18:00:35 by malcolm]
Plumb System.Time and System.CPUTime into nhc98 libraries build.
malcolm [Wed, 3 Mar 2004 19:25:41 +0000 (19:25 +0000)]
[project @ 2004-03-03 19:25:41 by malcolm]
#ifdefs for nhc98.
ross [Wed, 3 Mar 2004 11:47:42 +0000 (11:47 +0000)]
[project @ 2004-03-03 11:47:42 by ross]
withObject -> with
ralf [Tue, 2 Mar 2004 22:24:00 +0000 (22:24 +0000)]
[project @ 2004-03-02 22:23:59 by ralf]
Once more revised the Data class.
You will need to cvs upd the compiler as well.
malcolm [Mon, 1 Mar 2004 17:25:46 +0000 (17:25 +0000)]
[project @ 2004-03-01 17:25:46 by malcolm]
nhc98: ensure the Either type is identical with Prelude.Either.
simonmar [Mon, 1 Mar 2004 14:47:30 +0000 (14:47 +0000)]
[project @ 2004-03-01 14:47:30 by simonmar]
small improvements from Ian Lynagh
ralf [Sat, 28 Feb 2004 15:35:28 +0000 (15:35 +0000)]
[project @ 2004-02-28 15:35:28 by ralf]
Code that uses deriving (... Data ...)
will require an updated *compiler* to be in line with
these new boilerplate modules.
Overall changes:
- Revised datatype/constructor representations.
- Enhanced API for construction and observation.
- Added many Data instances for prelude-like types.
malcolm [Fri, 27 Feb 2004 14:48:16 +0000 (14:48 +0000)]
[project @ 2004-02-27 14:48:16 by malcolm]
To make it compile with nhc98, #ifdef out the Typeable[12] instances.
simonmar [Fri, 27 Feb 2004 10:27:41 +0000 (10:27 +0000)]
[project @ 2004-02-27 10:27:41 by simonmar]
Update the comments in here after changes in rev. 1.17.
ross [Thu, 26 Feb 2004 18:34:14 +0000 (18:34 +0000)]
[project @ 2004-02-26 18:34:14 by ross]
instances for Ordering and tuples (up to 5)
ralf [Thu, 26 Feb 2004 18:06:52 +0000 (18:06 +0000)]
[project @ 2004-02-26 18:06:51 by ralf]
Simplified kind-polymorphic boilerplate stuff.
ralf [Wed, 25 Feb 2004 21:20:04 +0000 (21:20 +0000)]
[project @ 2004-02-25 21:20:04 by ralf]
Follow-up fix triggered by yesterday's major scrap your boilerplate commit.
ralf [Wed, 25 Feb 2004 20:10:18 +0000 (20:10 +0000)]
[project @ 2004-02-25 20:10:18 by ralf]
Thanks to Sven Panne.
The module should be back to Haskell 98
or at least should not break hugs anymore.