https://github.com/educorreia932/recording
🎥 REPL for a polymorphic record-calculus
https://github.com/educorreia932/recording
compilation lambda-calculus master-dissertation polymorphism record-calculus
Last synced: 8 months ago
JSON representation
🎥 REPL for a polymorphic record-calculus
- Host: GitHub
- URL: https://github.com/educorreia932/recording
- Owner: Educorreia932
- License: other
- Created: 2023-10-20T16:22:40.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2024-12-03T09:31:26.000Z (over 1 year ago)
- Last Synced: 2025-01-05T19:24:46.747Z (over 1 year ago)
- Topics: compilation, lambda-calculus, master-dissertation, polymorphism, record-calculus
- Language: Haskell
- Homepage:
- Size: 198 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Citation: CITATION.cff
Awesome Lists containing this project
README
# Recording
Recording is a REPL for a $\lambda$-calculus with support for records and polymorphic operations over them.
# Installation
```sh
cabal install
```
# How to run
Execute `cabal run` to start the REPL.
```
Recording (1.0.1). Type :h to see a list of available commands
λ> :h
```
For information on how to use the interpreter, type `:h` in the REPL.
# Example
```
λ> :type \x -> x
∀t::U.(t -> t)
λ> :eval (\x -> x) 1
1
```
# Tests
To run the test suite, execute the following:
```
cabal test
```
---
This work was part of my Master's thesis at [FEUP](https://sigarra.up.pt/feup/en/).