Re: Application letters at the Haskell workshop: suggestion
Fri, 14 Sep 2001 01:00:06 +0200, Lennart Augustsson <lennart@augustsson.net> pisze:
I have been writing substantial Haskell programs and I use *NO* experimental features.
In a 2000-line interpreter I used: - FiniteMap (for environments), - Dynamic & Exception (for exceptions in the language being implemented and compile errors), - MonadReader, MonadError (for convenience, in two places), - MVar (could be IORef; for mutable objects in the language being interpreted), - unsafePerformIO (for three global variables: unique supply, loaded modules, search paths), - Readline (for the interactive toplevel). -- __("< Marcin Kowalczyk * qrczak@knm.org.pl http://qrczak.ids.net.pl/ \__/ ^^ SYGNATURA ZASTÊPCZA QRCZAK
Marcin 'Qrczak' Kowalczyk wrote:
Fri, 14 Sep 2001 01:00:06 +0200, Lennart Augustsson <lennart@augustsson.net> pisze:
I have been writing substantial Haskell programs and I use *NO* experimental features.
In a 2000-line interpreter I used: - FiniteMap (for environments), - Dynamic & Exception (for exceptions in the language being implemented and compile errors), - MonadReader, MonadError (for convenience, in two places), - MVar (could be IORef; for mutable objects in the language being interpreted), - unsafePerformIO (for three global variables: unique supply, loaded modules, search paths), - Readline (for the interactive toplevel).
I don't think all of these are extensions. Modules that can be written fully in Haskell are not extensions, they are just libraries. If you want to port your application to another Haskell implementation you can simply use the source. So I would guess that FiniteMap, MonadReader, MonadError, and Readline are not extension (Readline probably uses C, but it doesn't have to). The other extensions you have used sounds like you could do without. -- Lennart
participants (2)
-
Lennart Augustsson -
Marcin 'Qrczak' Kowalczyk