forked from luqui/vatican
-
Notifications
You must be signed in to change notification settings - Fork 0
jmcarthur/vatican
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
This is a codebase for experimenting with lazy specializing interpretation strategies. Currently implemented are: * Thyer's complete laziness semantics (sans memoization) * Bottom up beta substitution To try it out, use measure.pl, like so: % perl measure.pl bubs 5 This runs the incredibly simple program 3*3 using the bubs (bottom up beta substitution) interpreter at levels of interpretation from 0 to 5 (it is very likely you will not be patient enough for this to finish). So, for example, at the 3rd level, it is running an interpreter running an interpreter running an interpreter running 3*3. The other options are "thyer" and "ref". "ref" is a simple embedding of HOAS into Haskell, running (asymptotically) at the speed GHC would run this code. Here you can see thyer kick the pants off the other two.
About
A lazily specializing virtual machine for purely functional programs
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published
Languages
- Haskell 97.7%
- Perl 2.3%