Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
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
- Host: GitHub
- URL: https://github.com/evanxg852000/cppmonkey
- Owner: evanxg852000
- License: apache-2.0
- Created: 2019-05-26T11:39:32.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2019-06-04T22:38:20.000Z (over 5 years ago)
- Last Synced: 2024-04-16T00:19:49.079Z (7 months ago)
- Topics: catch2, compilers, cpp17, interpreter, monkey-programming-language
- Language: C++
- Homepage:
- Size: 1.02 MB
- Stars: 7
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
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