
Mon, 12 Mar 2001 20:22:03 +0000, Malcolm Wallace
Are you saying that there are language features which cannot be accessed without these libraries?
(I can't speak for Simon, but probably) yes. Features whose implementations rely on details of a particular runtime system. Those libraries provide the primary lowest level interface to them. They include all the magic types like Ptr, ForeignPtr, StablePtr, Weak, ByteArray, ST, Dynamic, Exception, MVar. And of course standard types like Integer, IO, Handle, but they are already in Haskell 98's libraries or even in Prelude. After some thought I am not convinced at all that we should make this distinction in the module namespace. This is implementors' job, not users'. A user doesn't care if FiniteMap is a builtin type or a container defined in Haskell 98, and whether an unboxed array is a builtin or a wrapper around ForeignPtr + Storable. We should probably put the corresponding modules under appropriate categories like data structures, FFI, I/O, concurrency, interaction with the system etc. Categories which reflect situations where these modules are used, not how they are defined. -- __("< Marcin Kowalczyk * qrczak@knm.org.pl http://qrczak.ids.net.pl/ \__/ ^^ SYGNATURA ZASTÊPCZA QRCZAK