https://github.com/wolfadex/snow
A toy programming language based on lambda calculus
https://github.com/wolfadex/snow
Last synced: about 1 year ago
JSON representation
A toy programming language based on lambda calculus
- Host: GitHub
- URL: https://github.com/wolfadex/snow
- Owner: wolfadex
- Created: 2021-03-14T22:15:28.000Z (about 5 years ago)
- Default Branch: main
- Last Pushed: 2021-03-17T16:28:47.000Z (about 5 years ago)
- Last Synced: 2025-02-07T18:14:56.398Z (over 1 year ago)
- Language: Elm
- Size: 6.84 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Snow
A toy programming language to learn more about parsers, lambda calculus and the ML family of languages (Haskell, Elm, etc).
The parsing and compiling is done in Elm, and Deno is used to run the compiled Elm code. Velociraptor, a Deno based script runner, is used for building for development and production.
## Run
- Install [Deno](https://deno.land/#installation)
- Install [Elm](https://guide.elm-lang.org/install/elm.html)
- Install [Velociraptor](https://deno.land/x/velociraptor#install)
- Run `vr elm-dev` in 1 terminal (builds, and rebuilds, the compiler)
- Run `vr main-dev ` in a separate terminal (runs the compiler)
## Examples
Integer literals
```
5
```
Lambdas
```
\x -> x
```
Application
```
f x
```
Parentheses
```
f (x y ) 5
```