Interpret haskell within haskell.

Bill Harrison wlh@cse.ogi.edu
Fri, 20 Dec 2002 13:42:39 -0800


Hi-

       The Programatica project at OGI is building a Haskell-in-Haskell 
specification, which is freely available.
It isn't complete as yet, but large parts of it are: a front-end, an 
executable specification of the module
system, and an interpreter for a large subset of Haskell98. Check out the 
Programatica website for further
details:
                         http://www.cse.ogi.edu/PacSoft/projects/programatica/default.htm

The interpreter is available from my webpage (as is the paper "Fine Control 
of Demand in Haskell" describing it):
                         http://www.cse.ogi.edu/~wlh/index.html

Cheers, Bill

>Message: 1
>Date: Thu, 19 Dec 2002 21:39:56 -0800 (PST)
>From: David Sankel <camio@yahoo.com>
>Subject: Interpret haskell within haskell.
>To: haskell@haskell.org
>
>I was wondering if there is any project that aims to
>interpret haskell within haskell.
>
>Is it feasable that a program can import a user's .hs
>file that has something like:
>
>greeting :: String
>greeting = "Something"
>
>port :: Int
>port = 32 + 33
>
>And the program can parse and execute the user's
>function.
>
>I'm looking for something similar to the eval command
>in Python.
>
>Thanks,
>
>David J. Sankel
>
>--__--__--
>
>Message: 2
>Subject: RE: Interpret haskell within haskell.
>Date: Fri, 20 Dec 2002 10:04:39 -0000
>From: "Simon Marlow" <simonmar@microsoft.com>
>To: "David Sankel" <camio@yahoo.com>, <haskell@haskell.org>
>
> > I was wondering if there is any project that aims to
> > interpret haskell within haskell.
> >=20
> > Is it feasable that a program can import a user's .hs
> > file that has something like:
> >=20
> > greeting :: String
> > greeting =3D "Something"
> >=20
> > port :: Int
> > port =3D 32 + 33
> >=20
> > And the program can parse and execute the user's
> > function.
> >=20
> > I'm looking for something similar to the eval command
> > in Python.
>
>You could potentially do this with GHCi, but we haven't tried.  The idea
>is that you would need to expose parts of GHCi itself as a library which
>can be used from the program.  Linking is a bit tricky (you don't want
>to load another copy of GHCi), but we know one way to get around that:
>the --export-dynamic flag to ld.
>
>If you're interested in having a go, come on over to
>glasgow-haskell-users@haskell.org and we'll help out with any problems
>you run into.
>
>Cheers,
>         Simon
>
>
>--__--__--
>
>_______________________________________________
>Haskell mailing list
>Haskell@haskell.org
>http://www.haskell.org/mailman/listinfo/haskell
>
>
>End of Haskell Digest