simonmar [Thu, 8 Jan 2004 15:27:29 +0000 (15:27 +0000)]
[project @ 2004-01-08 15:27:29 by simonmar]
update threadDelay docs: delay is rounded up.
simonmar [Wed, 7 Jan 2004 12:43:50 +0000 (12:43 +0000)]
[project @ 2004-01-07 12:43:50 by simonmar]
Mention that threadDelay rounds its argument down to a multiple of 0.02s.
ross [Tue, 6 Jan 2004 14:01:52 +0000 (14:01 +0000)]
[project @ 2004-01-06 14:01:52 by ross]
fix for Hugs
simonmar [Tue, 6 Jan 2004 12:40:01 +0000 (12:40 +0000)]
[project @ 2004-01-06 12:40:00 by simonmar]
Fix, and simplify, the getting/setting of errno in Foreign.C.Error.
It was previously wrong: although we called a C function to get the
location of errno (correct), we cached the result in a CAF which was
wrong because the location is OS thread dependent. We must call the C
function every time we need the value of errno.
I also simplified things by making the getter/setter functions inlined
in the same way as the other C fragments in this library, and putting
them in HsBase.h.
MERGE TO STABLE
ross [Tue, 6 Jan 2004 10:31:05 +0000 (10:31 +0000)]
[project @ 2004-01-06 10:31:05 by ross]
new Queue type, using Chris Okasaki's cute 3-list implementation.
ross [Mon, 5 Jan 2004 17:44:30 +0000 (17:44 +0000)]
[project @ 2004-01-05 17:44:30 by ross]
Make runST(U)Array work with Hugs. This includes explicitly using
unsafeFreezeSTArray rather than unsafeFreeze, to avoid relying on rules.
ross [Mon, 5 Jan 2004 16:47:09 +0000 (16:47 +0000)]
[project @ 2004-01-05 16:47:09 by ross]
Change the drawing of trees so that long labels work better.
The new drawings are narrower but a little longer than before.
simonmar [Mon, 5 Jan 2004 16:03:34 +0000 (16:03 +0000)]
[project @ 2004-01-05 16:03:34 by simonmar]
Add runSTArray and runSTUArray, as suggested by John Meacham.
runSTUArray showed up an interesting deficiency in the type system
(see comments for details).
ross [Mon, 5 Jan 2004 10:07:52 +0000 (10:07 +0000)]
[project @ 2004-01-05 10:07:52 by ross]
doc tidy-ups
ross [Mon, 5 Jan 2004 10:07:25 +0000 (10:07 +0000)]
[project @ 2004-01-05 10:07:25 by ross]
doc tweak
panne [Fri, 2 Jan 2004 19:03:14 +0000 (19:03 +0000)]
[project @ 2004-01-02 19:03:14 by panne]
Annual copyright update
panne [Mon, 29 Dec 2003 17:16:42 +0000 (17:16 +0000)]
[project @ 2003-12-29 17:16:42 by panne]
Updated my email address
simonmar [Tue, 23 Dec 2003 13:58:18 +0000 (13:58 +0000)]
[project @ 2003-12-23 13:58:17 by simonmar]
- Fix up mingw build after changes to hGetBuf etc.
I don't think that hGetBufNonBlocking works correctly on Windows,
because there doesn't seem to be a non-blocking read primitive. I
haven't tested it, however.
- Clean up Unix versions of the low-level read/write functions in
Handle.hs. Now that these aren't used on Windows, they can be
made simpler.
simonmar [Tue, 23 Dec 2003 12:35:34 +0000 (12:35 +0000)]
[project @ 2003-12-23 12:35:34 by simonmar]
Fix yet another bug in hGetBuf/hGetBufNonBlocking
simonmar [Mon, 22 Dec 2003 12:41:52 +0000 (12:41 +0000)]
[project @ 2003-12-22 12:41:52 by simonmar]
add fillReadBufferWithoutBlocking (required for fixed
hGetBufNonBlocking implementation in IO.hs rev. 1.20)
simonmar [Mon, 22 Dec 2003 12:23:35 +0000 (12:23 +0000)]
[project @ 2003-12-22 12:23:35 by simonmar]
- Fix hGetBuf & hGetBufNonBlocking. There were various bugs in these
two functions, so I did a complete rewrite (again). They are quite
hard to get right it seems, so I've put together a test case
(shortly to be added to the test suite).
- Change to the semantics of hWaitForInput: when given a negative
time argument, this function will wait indefinitely for input to
arrive. It will wait in a thread-friendly way, unlike when the
time argument is positive. The docs now admit that hWaitForInput
is buggy when given a positive time value.
hWaitForInput h (-1) is now the approved way to wait for input
before calling hGetBufNonBlocking.
MERGE TO STABLE (hGetBuf is broken in 6.2).
simonmar [Mon, 22 Dec 2003 10:56:42 +0000 (10:56 +0000)]
[project @ 2003-12-22 10:56:42 by simonmar]
performGC should really do a major GC - this was broken at some point.
sof [Wed, 17 Dec 2003 17:15:12 +0000 (17:15 +0000)]
[project @ 2003-12-17 17:15:12 by sof]
merge rev. 1.13.2.1
sof [Wed, 17 Dec 2003 17:13:47 +0000 (17:13 +0000)]
[project @ 2003-12-17 17:13:47 by sof]
merge rev 1.48.2.4
simonmar [Tue, 16 Dec 2003 16:54:42 +0000 (16:54 +0000)]
[project @ 2003-12-16 16:54:42 by simonmar]
Add Show instance for Set
simonmar [Tue, 16 Dec 2003 16:54:12 +0000 (16:54 +0000)]
[project @ 2003-12-16 16:54:12 by simonmar]
Add Show instance for FiniteMap
panne [Mon, 15 Dec 2003 17:59:05 +0000 (17:59 +0000)]
[project @ 2003-12-15 17:59:05 by panne]
Fixed #ifdefs for Cygwin
sof [Fri, 12 Dec 2003 18:29:26 +0000 (18:29 +0000)]
[project @ 2003-12-12 18:29:26 by sof]
showIntAtBase:
- implementation uses quotRem [where the remainder isn't always
non-negative -- ditto for divMod, so there's no trivial fix],
negative bases aren't supported; catch this.
- separate argument validity checking from actual digitisation.
ralf [Sat, 6 Dec 2003 17:48:49 +0000 (17:48 +0000)]
[project @ 2003-12-06 17:48:49 by ralf]
Added Data instances for triples and quadruples.
panne [Thu, 4 Dec 2003 18:25:51 +0000 (18:25 +0000)]
[project @ 2003-12-04 18:25:51 by panne]
Synched #ifdefs, but only 90% sure if I got it right...
simonmar [Fri, 28 Nov 2003 11:08:54 +0000 (11:08 +0000)]
[project @ 2003-11-28 11:08:54 by simonmar]
Doc wibble
simonmar [Wed, 26 Nov 2003 10:00:09 +0000 (10:00 +0000)]
[project @ 2003-11-26 10:00:09 by simonmar]
oops, revert accidental commit
simonmar [Wed, 26 Nov 2003 09:55:26 +0000 (09:55 +0000)]
[project @ 2003-11-26 09:55:22 by simonmar]
Declare some libraries to be "stable".
ralf [Sun, 23 Nov 2003 22:19:35 +0000 (22:19 +0000)]
[project @ 2003-11-23 22:19:35 by ralf]
Added the missing Data instance for Either.
ralf [Sun, 23 Nov 2003 12:25:03 +0000 (12:25 +0000)]
[project @ 2003-11-23 12:25:02 by ralf]
Refactored some alias for generic builders and readers.
Worked out some interested stuff for reification of type structures.
ralf [Sun, 23 Nov 2003 12:23:49 +0000 (12:23 +0000)]
[project @ 2003-11-23 12:23:49 by ralf]
Added some trivial observers for type representations.
sof [Fri, 21 Nov 2003 16:24:44 +0000 (16:24 +0000)]
[project @ 2003-11-21 16:24:44 by sof]
code tidyup
panne [Sat, 15 Nov 2003 22:31:16 +0000 (22:31 +0000)]
[project @ 2003-11-15 22:31:16 by panne]
Decouple packages a bit more again: The prologue of the combined index is now
generated via shell magic from the package prologues. As a nice side effect,
some autoconf magic is gone, so configure.ac is effectively empty now (but not
for long... :-)
panne [Thu, 13 Nov 2003 19:23:12 +0000 (19:23 +0000)]
[project @ 2003-11-13 19:23:12 by panne]
Markup fix
ross [Thu, 13 Nov 2003 14:43:58 +0000 (14:43 +0000)]
[project @ 2003-11-13 14:43:58 by ross]
Hugs-only tweak
simonmar [Tue, 11 Nov 2003 11:50:53 +0000 (11:50 +0000)]
[project @ 2003-11-11 11:50:52 by simonmar]
Convert to use Haddock 0.6's combined contents/index functionality for
the hierarchical library docs.
HEADS UP: you need Haddock 0.6 in order to run 'make html' in
fptools/libraries now.
sof [Mon, 10 Nov 2003 15:55:13 +0000 (15:55 +0000)]
[project @ 2003-11-10 15:55:13 by sof]
ALL_DIRS: added Control/Parallel
sof [Mon, 10 Nov 2003 15:54:55 +0000 (15:54 +0000)]
[project @ 2003-11-10 15:54:55 by sof]
brought into the hier-lib world; stripped away outdated code & comments
simonmar [Mon, 10 Nov 2003 15:32:43 +0000 (15:32 +0000)]
[project @ 2003-11-10 15:32:43 by simonmar]
Change the documentation title from "Haskell Core Libraries" to "Haskell Hierarchical Libraries".
simonmar [Thu, 6 Nov 2003 17:34:00 +0000 (17:34 +0000)]
[project @ 2003-11-06 17:34:00 by simonmar]
Doc wibbles
ross [Thu, 6 Nov 2003 12:50:24 +0000 (12:50 +0000)]
[project @ 2003-11-06 12:50:22 by ross]
import Prelude if haddocking
ross [Wed, 5 Nov 2003 15:05:12 +0000 (15:05 +0000)]
[project @ 2003-11-05 15:05:12 by ross]
doc updates for mallocForeignPtr and friends
simonmar [Wed, 5 Nov 2003 10:43:10 +0000 (10:43 +0000)]
[project @ 2003-11-05 10:43:10 by simonmar]
Better documentation for unsafeThaw, unsafeFreeze.
simonmar [Wed, 5 Nov 2003 09:58:01 +0000 (09:58 +0000)]
[project @ 2003-11-05 09:58:01 by simonmar]
Fix a memory leak in __hscore_readdir() which meant that one struct
dirent was leaked at the end of each directory read.
Bug-reported-by: David Roundy <droundy@abridgegame.org>
What-a-great-system: Valgrind
ross [Tue, 4 Nov 2003 21:59:23 +0000 (21:59 +0000)]
[project @ 2003-11-04 21:59:23 by ross]
Hugs only: add finalizers with environments, as per the latest FFI draft.
ralf [Sun, 2 Nov 2003 17:52:09 +0000 (17:52 +0000)]
[project @ 2003-11-02 17:52:09 by ralf]
Minor extension to enable rebuild of Strafunski.
panne [Sun, 2 Nov 2003 16:30:16 +0000 (16:30 +0000)]
[project @ 2003-11-02 16:30:16 by panne]
* Added workaround for broken sigemptyset
* Use #if, not #ifdef for feature tests
* Nuked CVS keyword
panne [Sun, 2 Nov 2003 00:06:23 +0000 (00:06 +0000)]
[project @ 2003-11-02 00:06:23 by panne]
Added an extremely ugly workaround for the broken sigfillset macro on
OpenBSD, which misses a cast. Is there a better way?
Probably merge to STABLE.
sof [Thu, 30 Oct 2003 18:51:26 +0000 (18:51 +0000)]
[project @ 2003-10-30 18:51:26 by sof]
drop uses of __MINGW32__, no longer needed
stolz [Mon, 27 Oct 2003 12:09:44 +0000 (12:09 +0000)]
[project @ 2003-10-27 12:09:44 by stolz]
Avoid setting O_NONBLOCK when already set.
ross [Mon, 27 Oct 2003 09:56:11 +0000 (09:56 +0000)]
[project @ 2003-10-27 09:56:11 by ross]
unswap UNBLOCK/SETMASK (merge to STABLE)
sof [Tue, 21 Oct 2003 14:32:44 +0000 (14:32 +0000)]
[project @ 2003-10-21 14:32:43 by sof]
appease the GHC bigwigs
simonmar [Tue, 21 Oct 2003 14:00:20 +0000 (14:00 +0000)]
[project @ 2003-10-21 14:00:20 by simonmar]
oops, revert parts of previous commit that weren't supposed to be included.
simonmar [Tue, 21 Oct 2003 13:57:39 +0000 (13:57 +0000)]
[project @ 2003-10-21 13:57:39 by simonmar]
Fix bug in hGetBufNonBlocking that meant it would sometimes block.
simonmar [Tue, 21 Oct 2003 13:31:44 +0000 (13:31 +0000)]
[project @ 2003-10-21 13:31:44 by simonmar]
- Add _LE duals of the _GE functions
- Add minFM and maxFM
From: George Russell <ger@tzi.de>
simonmar [Tue, 21 Oct 2003 13:27:13 +0000 (13:27 +0000)]
[project @ 2003-10-21 13:27:13 by simonmar]
Make peekArray0 run in constant stack-space by testing the length of
the array first, then calling peekArray (which works backwards from
the end so it can be tail-recursive).
simonmar [Tue, 21 Oct 2003 13:24:31 +0000 (13:24 +0000)]
[project @ 2003-10-21 13:24:31 by simonmar]
Make the GHC implementation of peekCString run in constant stack-space
by checking the length of the array first and then working backwards
from the end. Interestingly, this version is faster than the original.
panne [Mon, 20 Oct 2003 20:00:25 +0000 (20:00 +0000)]
[project @ 2003-10-20 20:00:25 by panne]
Again: Fixed previous commit. Our QA department must really be on an
extended vacation... :-]
simonmar [Mon, 20 Oct 2003 15:56:52 +0000 (15:56 +0000)]
[project @ 2003-10-20 15:56:52 by simonmar]
Convert Unicode.hsc to a plain .hs file to fix bootstrapping problems.
simonmar [Mon, 20 Oct 2003 13:17:24 +0000 (13:17 +0000)]
[project @ 2003-10-20 13:16:58 by simonmar]
Comment use of $(HavePosixRegex)
ross [Mon, 20 Oct 2003 12:31:00 +0000 (12:31 +0000)]
[project @ 2003-10-20 12:31:00 by ross]
add System.Posix.Signals to Hugs
ross [Fri, 17 Oct 2003 16:48:43 +0000 (16:48 +0000)]
[project @ 2003-10-17 16:48:43 by ross]
Hugs only: add most of the rest of System.Posix
(I wonder why SIG_UNBLOCK and SIG_SETMASK are switched in HsBase.h)
ross [Thu, 16 Oct 2003 16:26:43 +0000 (16:26 +0000)]
[project @ 2003-10-16 16:26:43 by ross]
fix a couple of id references in haddock docs
ross [Thu, 16 Oct 2003 00:18:34 +0000 (00:18 +0000)]
[project @ 2003-10-16 00:18:34 by ross]
add withArgs and withProgName to Hugs.
No change for GHC, but does change the docs, so please merge to STABLE.
sof [Mon, 13 Oct 2003 05:23:53 +0000 (05:23 +0000)]
[project @ 2003-10-13 05:23:53 by sof]
mingw tweaks + add cbits/consUtils.c to CBITS
sof [Mon, 13 Oct 2003 05:22:59 +0000 (05:22 +0000)]
[project @ 2003-10-13 05:22:59 by sof]
support CFoo iff HTYPE_FOO_T is defined
sof [Mon, 13 Oct 2003 05:21:54 +0000 (05:21 +0000)]
[project @ 2003-10-13 05:21:37 by sof]
more mind-numbing CPP tweaking
sof [Mon, 13 Oct 2003 05:20:37 +0000 (05:20 +0000)]
[project @ 2003-10-13 05:20:37 by sof]
extra_libraries: win32 CPP tweak
sof [Mon, 13 Oct 2003 05:09:40 +0000 (05:09 +0000)]
[project @ 2003-10-13 05:09:40 by sof]
prev commit too strict wrt mingw
sof [Mon, 13 Oct 2003 03:21:20 +0000 (03:21 +0000)]
[project @ 2003-10-13 03:21:20 by sof]
cope if regex.h isn't supported by target
sof [Mon, 13 Oct 2003 03:19:48 +0000 (03:19 +0000)]
[project @ 2003-10-13 03:19:48 by sof]
make it useable with msvc + gcc-mingw
stolz [Thu, 9 Oct 2003 14:01:46 +0000 (14:01 +0000)]
[project @ 2003-10-09 14:01:46 by stolz]
Fix flipped arguments to sigprocmask in getSignalMask.
Noticed by: Shawn P. Garbett
stolz [Thu, 9 Oct 2003 13:59:33 +0000 (13:59 +0000)]
[project @ 2003-10-09 13:59:33 by stolz]
FreeBSD 4.X has an emtpy wctype.h, so test one of the affected
functions in Unicode.hsc if it's really there.
sof [Tue, 7 Oct 2003 16:56:33 +0000 (16:56 +0000)]
[project @ 2003-10-07 16:56:33 by sof]
peekCString{Len}: tweak GHC impls (why are these provided anyway?)
- Do as for Foreign.Marshal.Array.peekArray and read in length-bounded
string back-to-front.
- force evaluation of CChar->Char conversions.
merge to STABLE.
simonpj [Mon, 6 Oct 2003 13:14:36 +0000 (13:14 +0000)]
[project @ 2003-10-06 13:14:36 by simonpj]
MERGE TO STABLE
Fix trivial lexing bug involving leading zeros
045.4
was lexing as an Int, with a trailing ".4"
The test is lib/Lex/lexNum
wolfgang [Wed, 1 Oct 2003 11:00:20 +0000 (11:00 +0000)]
[project @ 2003-10-01 11:00:20 by wolfgang]
Add runInUnboundThread to the export list
wolfgang [Wed, 1 Oct 2003 10:57:44 +0000 (10:57 +0000)]
[project @ 2003-10-01 10:57:44 by wolfgang]
New implementation & changed type signature of forkProcess
forkProcess now has the following type:
forkProcess :: IO () -> IO ProcessID
forkProcessAll has been removed as it is unimplementable in the threaded RTS.
forkProcess using the old type (IO (Maybe ProcessID)) was impossible to
implement correctly in the non-threaded RTS and very hard to implement
in the threaded RTS.
The new type signature allows a clean and simple implementation.
panne [Fri, 26 Sep 2003 09:26:13 +0000 (09:26 +0000)]
[project @ 2003-09-26 09:26:13 by panne]
Saving/restoring termios is only done for GHC
panne [Thu, 25 Sep 2003 15:14:44 +0000 (15:14 +0000)]
[project @ 2003-09-25 15:14:44 by panne]
To fix dynamic linking issues with Hugs, access saved_termios via
getter/setter.
sof [Thu, 25 Sep 2003 14:44:36 +0000 (14:44 +0000)]
[project @ 2003-09-25 14:44:36 by sof]
[win32]getCPUTime:
comments + reduce fromIntegral use. No change in functionality.
simonmar [Wed, 24 Sep 2003 14:01:18 +0000 (14:01 +0000)]
[project @ 2003-09-24 14:01:18 by simonmar]
Add foldFM_GE, fmToList_GE, keysFM_GE, eltsFM_GE. (contributed by
Tomasz Zielonka via George Russell).
malcolm [Wed, 24 Sep 2003 13:26:08 +0000 (13:26 +0000)]
[project @ 2003-09-24 13:26:08 by malcolm]
Missing dependency.
simonmar [Wed, 24 Sep 2003 11:36:24 +0000 (11:36 +0000)]
[project @ 2003-09-24 11:36:24 by simonmar]
Add some realToFrac rules for CFloat,CDouble and CLDouble, so that
eg. realToFrac :: CDouble -> Double turns into a no-op.
simonmar [Wed, 24 Sep 2003 11:06:54 +0000 (11:06 +0000)]
[project @ 2003-09-24 11:06:54 by simonmar]
Move forkOS_createThread into the RTS so its implementation can be
dependent on RTS_SUPPORTS_THREADS, which means we can provide a stub
implementation in the !RTS_SUPPORTS_THREADS case, and hence not depend
on pthread_create, which requires -lpthread. The upshot is that GHCi
now works again when !RTS_SUPPORTS_THREADS.
simonmar [Wed, 24 Sep 2003 10:41:11 +0000 (10:41 +0000)]
[project @ 2003-09-24 10:41:11 by simonmar]
Add non-blocking versions of hGetBuf, hPutBuf.
simonmar [Wed, 24 Sep 2003 10:32:12 +0000 (10:32 +0000)]
[project @ 2003-09-24 10:32:12 by simonmar]
If we change the terminal settings as a result of hSetBuffering or
hSetEcho, then restore them again in hs_exit(). This is just good
citizenship on Unixy platforms.
We *don't* just automatically save the terminal settings and restore
them at the end, because that would prevent implementing stty-like
programs in Haskell. This scheme is a compromise that hopefully DTRT
in most cases.
sof [Tue, 23 Sep 2003 18:59:43 +0000 (18:59 +0000)]
[project @ 2003-09-23 18:59:43 by sof]
h{Get,Put}NonBlocking: win32 impl
sof [Tue, 23 Sep 2003 17:33:12 +0000 (17:33 +0000)]
[project @ 2003-09-23 17:33:12 by sof]
createPipe, createPipeEx: commented out exports (doesn't appear to be defined anywhere)
sof [Tue, 23 Sep 2003 16:18:03 +0000 (16:18 +0000)]
[project @ 2003-09-23 16:18:03 by sof]
[win32]: make it compile
simonmar [Tue, 23 Sep 2003 16:13:59 +0000 (16:13 +0000)]
[project @ 2003-09-23 16:13:59 by simonmar]
Haddock fix.
simonmar [Tue, 23 Sep 2003 13:26:30 +0000 (13:26 +0000)]
[project @ 2003-09-23 13:26:30 by simonmar]
- Add h{Get,Put}BufNonBlocking
- optimise hGetBuf/hPutBuf so that they use the buffer more. Lots of
small hGetBufs will now use the read buffer, rather than repeatedly
calling into the OS.
simonmar [Tue, 23 Sep 2003 13:23:58 +0000 (13:23 +0000)]
[project @ 2003-09-23 13:23:58 by simonmar]
micro-optimisation
panne [Tue, 23 Sep 2003 10:09:17 +0000 (10:09 +0000)]
[project @ 2003-09-23 10:09:17 by panne]
Unbreak Show instance for Ptr caused by the changes to showHex
merge to STABLE
wolfgang [Mon, 22 Sep 2003 13:27:19 +0000 (13:27 +0000)]
[project @ 2003-09-22 13:27:19 by wolfgang]
Really make the bound threads stuff compile this time (sorry).
ross [Mon, 22 Sep 2003 11:11:54 +0000 (11:11 +0000)]
[project @ 2003-09-22 11:11:54 by ross]
cosmetic: move comments inside #ifdefs to avoid confusing people (like
Hugs users) who look at the preprocessed output.
wolfgang [Mon, 22 Sep 2003 10:20:06 +0000 (10:20 +0000)]
[project @ 2003-09-22 10:20:06 by wolfgang]
fix some embarassing typos in the previous commit
wolfgang [Sun, 21 Sep 2003 22:20:57 +0000 (22:20 +0000)]
[project @ 2003-09-21 22:20:57 by wolfgang]
Bound Threads
=============
Introduce a way to use foreign libraries that rely on thread local state
from multiple threads (mainly affects the threaded RTS).
See the file threads.tex in CVS at haskell-report/ffi/threads.tex
(not entirely finished yet) for a definition of this extension. A less formal
description is also found in the documentation of Control.Concurrent.
The changes mostly affect the THREADED_RTS (./configure --enable-threaded-rts),
except for saving & restoring errno on a per-TSO basis, which is also necessary
for the non-threaded RTS (a bugfix).
Detailed list of changes
------------------------
- errno is saved in the TSO object and restored when necessary:
ghc/includes/TSO.h, ghc/rts/Interpreter.c, ghc/rts/Schedule.c
- rts_mainLazyIO is no longer needed, main is no special case anymore
ghc/includes/RtsAPI.h, ghc/rts/RtsAPI.c, ghc/rts/Main.c, ghc/rts/Weak.c
- passCapability: a new function that releases the capability and "passes"
it to a specific OS thread:
ghc/rts/Capability.h ghc/rts/Capability.c
- waitThread(), scheduleWaitThread() and schedule() get an optional
Capability *initialCapability passed as an argument:
ghc/includes/SchedAPI.h, ghc/rts/Schedule.c, ghc/rts/RtsAPI.c
- Bound Thread scheduling (that's what this is all about):
ghc/rts/Schedule.h, ghc/rts/Schedule.c
- new Primop isCurrentThreadBound#:
ghc/compiler/prelude/primops.txt.pp, ghc/includes/PrimOps.h, ghc/rts/PrimOps.hc,
ghc/rts/Schedule.h, ghc/rts/Schedule.c
- a simple function, rtsSupportsBoundThreads, that returns true if THREADED_RTS
is defined:
ghc/rts/Schedule.h, ghc/rts/Schedule.c
- a new implementation of forkProcess (the old implementation stays in place
for the non-threaded case). Partially broken; works for the standard
fork-and-exec case, but not for much else. A proper forkProcess is
really next to impossible to implement:
ghc/rts/Schedule.c
- Library support for bound threads:
Control.Concurrent.
rtsSupportsBoundThreads, isCurrentThreadBound, forkOS,
runInBoundThread, runInUnboundThread
libraries/base/Control/Concurrent.hs, libraries/base/Makefile,
libraries/base/include/HsBase.h, libraries/base/cbits/forkOS.c (new file)
simonmar [Tue, 16 Sep 2003 13:46:36 +0000 (13:46 +0000)]
[project @ 2003-09-16 13:46:36 by simonmar]
Don't strip the trailing slash from the filename '/'.
simonmar [Tue, 16 Sep 2003 13:03:37 +0000 (13:03 +0000)]
[project @ 2003-09-16 13:03:37 by simonmar]
Legacy Removal
~~~~~~~~~~~~~~
The following features have been consigned to the bit bucket:
_ccall_
_casm_
``....'' (lit-lits)
the CCallable class
the CReturnable class
simonmar [Fri, 12 Sep 2003 13:05:20 +0000 (13:05 +0000)]
[project @ 2003-09-12 13:05:19 by simonmar]
Implement pathconf()/fpathconf() wrappers.