1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
5 <title>Haskell Library Hierarchy</title>
10 <h1>The Haskell Library Hierarchy</h1>
14 DomainConstructor -- formerly DoCon
15 Geometric -- formerly BasGeomAlg
18 Exception -- (opt, inc. error & undefined)
19 Concurrent -- as hslibs/concurrent
20 Chan -- these could all be moved under Data
27 Parallel -- as hslibs/concurrent/Parallel
29 Monad -- Haskell 98 Monad library
30 ST -- ST defaults to Strict variant?
31 Strict -- renaming for ST
32 Lazy -- renaming for LazyST
40 Fix -- to be renamed to Rec?
47 Bool -- &&, ||, not, otherwise
59 LargeWord -- Word128 etc., from crypto
61 STRef -- Same as Data.STRef.Strict
63 Lazy -- The lazy version (for Control.Monad.ST.Lazy)
64 Binary -- Haskell binary I/O
68 Array -- Haskell 98 Array library
72 IO -- mutable arrays in the IO/ST monads
82 Graph -- start with GHC's DiGraph?
94 ... -- Mirrors the MS .NET class hierarchy
98 Observe -- choose a default amongst the variants
99 Textual -- Andy Gill's release 1
100 ToXmlFile -- Andy Gill's XML browser variant
101 GHood -- Claus Reinke's animated variant
103 Edison -- (opt, uses multi-param type classes)
104 Prelude -- large self-contained packages should have
105 Collection -- their own hierarchy? Like a vendor branch.
106 Queue -- Or should the whole Edison tree be placed
107 ... -- under [Data.]Structures?
109 Codec -- Coders/Decoders for various data formats
142 Binary -- these are for encoding binary data into text
146 DSP -- Digital Signal Processing libraries
151 ForeignPtr -- rename to FinalisedPtr? to void confusion with Foreign.Ptr
164 Exts -- hslibs/lang/GlaExts
197 Haskell -- hslibs/hssource
210 Numeric -- exports std. H98 numeric type classes
213 Network -- (== hslibs/net/Socket), depends on FFI only
214 Socket -- or rename to Posix?
215 URI -- general URI parsing
216 CGI -- one in hslibs is ok?
222 Prelude -- Haskell98 Prelude (mostly just re-exports
223 other parts of the tree).
225 System -- Interaction with the "system"
229 Exit -- ( ExitCode(..), exitWith, exitFailure )
230 Environment -- ( getArgs, getProgName, getEnv ... )
231 Info -- info about the host system
232 IO -- H98 + IOExts - IOArray - IORef
234 Unsafe -- unsafePerformIO, unsafeInterleaveIO
248 Mem -- rename from cryptic 'GC'
251 Time -- H98 + extensions
252 Win32 -- the full win32 operating system API
263 Lex -- cut down lexer for "read"
265 Functions -- optional instance of Show for functions.
266 Regex -- previously RegexString
267 Posix -- Posix regular expression interface
268 PrettyPrint -- default (HughesPJ?)
273 HTML -- HTML combinator lib
279 ParserCombinators -- no default
280 ReadP -- a more efficient "ReadS"