https://github.com/smirnovoleg/haskell-interpreter
MiniHaskell interpreter implementation
https://github.com/smirnovoleg/haskell-interpreter
haskell interpreter parser
Last synced: over 1 year ago
JSON representation
MiniHaskell interpreter implementation
- Host: GitHub
- URL: https://github.com/smirnovoleg/haskell-interpreter
- Owner: SmirnovOleg
- License: other
- Created: 2020-02-23T21:33:44.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2020-02-23T21:56:30.000Z (over 6 years ago)
- Last Synced: 2025-01-27T14:50:39.296Z (over 1 year ago)
- Topics: haskell, interpreter, parser
- Language: Haskell
- Homepage:
- Size: 82 KB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Authors: Authors
Awesome Lists containing this project
README
# haskell-course2019-hw
*Functional Programming course in Saint-Peterburg State University*
### Haskell Interpreter
Run REPL with `make && make test`
**Implemented features:**
- Numbers, bools, characters, pairs
- Lists, strings
- Initial binary & unary operators
- Functions
- Call-by-name evaluation strategy
- Pointless style
- Partial application
- `if-then-else` & `where` expressions
- Simple pattern matching
- Simple Hindley-Milner type inference
**TODO**
- Fix parser:
- `a ++ b` instead of `concat a b` calls
- `(+ 2) 3`
- `(f (+) 2) 1`
- `(head [\x->x+1, \x->x+2]) 1`