Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ysiraichi/ftc
This is a Pure-Functional Tiger Language compiler.
https://github.com/ysiraichi/ftc
Last synced: 10 days ago
JSON representation
This is a Pure-Functional Tiger Language compiler.
- Host: GitHub
- URL: https://github.com/ysiraichi/ftc
- Owner: ysiraichi
- Created: 2016-02-14T23:24:00.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2016-02-15T22:27:07.000Z (over 8 years ago)
- Last Synced: 2024-10-07T07:40:22.022Z (about 1 month ago)
- Language: C
- Size: 127 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# The Pure-Functional Tiger Language Compiler (ftc)
The 'ftc' program is a Pure-functional Tiger Language Compiler.
The Pure-Functional Tiger is a derived language from the imperative Tiger,
specified in the book ['Modern Compiler Implementation in C', by Andrew W. Appel](https://www.cs.princeton.edu/~appel/modern/c/).
As the name suggests, it is a pure-functional language, as specified in the book, chapter 15.### Setup
In order to setup this program, first clone this repo and then build it, as follows:
```
$ git clone https://github.com/YuKill/ftc
$ cd ftc && mkdir build && cd build
$ make && make install
```### Usage
```
$ ftc [-o ] [-tree] [-emit-llvm ] [-emit-as]
```##### Arguments:
* InputFile :: the file which contains a pure-functional tiger program;
* -o :: the output file base name;
* -tree :: prints the program's ASTree in a 'dot' file graph;
* -emit-llvm :: emits a file corresponding to the program in LLVM IR language;
* -emit-as :: emits a file corresponding to the program in Assembly language;