An interpreter for Summer language written in Golang.
let five = 5;
let ten = 10;
let add = fn(a, b) {
a + b;
};
let result = add(five, ten);
- First Class functions
- Higher order functions
- Variable bindings
- Integer and booleans
- Closures
- String data structure
- Array data structure
- A hash data structure
- Built-in functions
- arithmetic expressions
go run main.go
The language and the interpreter was done only for learning purposes and it was based on the book "Writing An Interpreter in Go" by Thorsten Ball.