Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/evanxg852000/cppmonkey

My C++ implementation of the monkey programming language
https://github.com/evanxg852000/cppmonkey

catch2 compilers cpp17 interpreter monkey-programming-language

Last synced: about 13 hours ago
JSON representation

My C++ implementation of the monkey programming language

Awesome Lists containing this project

README

        

# CPP Monkey:
This is my implementation of the monkey programming language following
the wonderful book Writing An Interpreter In Go. You should definetly grab a copy if you still struggle with `Operator Precedence Parsing`. Catch2 is being used for tests.

### Try it:
The code is self contained as a dockerized app.

Build & Jump inside the container:

```
$ docker build -t cppmonkey .
$ docker run -it --rm -v "$PWD":/usr/project cppmonkey
```

Run the test
```
$ ./entrypoint.sh ftest
```

Run the REPL
```
$ ./entrypoint.sh frun
```

### Note:
The primary `raison d'être` of this repo is to learn compilers and C++. Please help review my c++ code, suggest improvement, best practices and idoms.

### Online C++ Docs:
- https://www.learncpp.com/
- http://www.trytoprogram.com/c-programming
- http://www.fredosaurus.com/notes-cpp/index.html