https://github.com/jozefg/hi
A toy interpreter for Haskell
https://github.com/jozefg/hi
Last synced: 2 months ago
JSON representation
A toy interpreter for Haskell
- Host: GitHub
- URL: https://github.com/jozefg/hi
- Owner: jozefg
- License: mit
- Created: 2014-12-10T18:05:35.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2014-12-20T03:36:37.000Z (over 10 years ago)
- Last Synced: 2025-01-28T16:34:37.089Z (4 months ago)
- Language: Haskell
- Homepage:
- Size: 305 KB
- Stars: 5
- Watchers: 5
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## Hi - A Haskell interpreter
There aren't nearly enough toy Haskell interpreters. Here's my attempt
at one. Some of the design is fleshed out in the notes directory.This interpreter only handles a single file, it doesn't attempt to
handle modules or imports or anything like that. Aside from this
though it is a reasonably complete implementation of core Haskell 98.The interpreter follows roughly the pipeline
Parsing (haskell-src-exts)
⇓
Pruning the AST
⇓
Type Checking and similar
⇓
Strip Syntactic Sugar
⇓
Closure Conversion
⇓
Lambda Lifting
⇓
STG Machine (PUSH-ENTER style)