Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/amaiorano/TinyCompiler
A tiny compiler written in modern C++ that transpiles Lisp to C++
https://github.com/amaiorano/TinyCompiler
Last synced: about 2 months ago
JSON representation
A tiny compiler written in modern C++ that transpiles Lisp to C++
- Host: GitHub
- URL: https://github.com/amaiorano/TinyCompiler
- Owner: amaiorano
- License: mit
- Created: 2016-10-20T03:19:05.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2016-10-21T03:12:07.000Z (almost 8 years ago)
- Last Synced: 2024-06-12T05:41:55.438Z (4 months ago)
- Language: C++
- Size: 15.6 KB
- Stars: 11
- Watchers: 4
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# TinyCompiler
A tiny compiler written in modern C++ that transpiles Lisp to C++.
This is based on [James Kyle's excellent "The Super Tiny Compiler"](https://github.com/thejameskyle/the-super-tiny-compiler), which I discovered from [Jonathan Turner's really great programming languages and compilers reading list](http://www.jonathanturner.org/2016/10/programming-language-and-compilers-reading-list.html).
When working through James Kyle's code, I decided to try and implement the compiler in C++ to better understand it. It also gave me a chance to practice using modern C++11/14/17 features.
# How to build it
Install:
- CMake 3.6 or newer
- On Windows, Visual Studio 2015 Update 3 with Clang with Microsoft CodeGen (v140_clang_c2)On Windows, run build_msvc.bat
On Linux (maybe Mac), run build_gcc.sh or build_clang.sh