* Run Instructions The =manifest.scm= file provides the ideal build environment automatically to Guix users. flex, pkg-config, bison, make, and gcc are required to compile the frontend into a shared object file with =make all=, and guile is required to run the =ull= script. Running the ./ull script will print allowed arguments, which follows the interface prescribed by the book //Writing a C Compiler// by Nora Sandler. * General This compiler was made following the general guidelines provided in //Writing a C Compiler// by Nora Sandler. Since this a functional-programing/guile learning project, I utilized flex and bison to allow use of the Guile/C interface. Development takes a functionality-first approach---memory leaks and other undesired behavior likely. * Feature Agenda ** Current Issues - [ ] Memleak related to driver.c, haven't figured out how to test this yet - [ ] More parenthesis ** TODO Major Features [2/19] - [X] Trivial Programs - [X] Unary Operators - bitwise complement, negation - [ ] Binary Operators - [ ] Logical and Relational Operators - [ ] Local Variables - [ ] If Statements and Conditional Expressions - [ ] Compound Statements - [ ] Loops - [ ] Functions - [ ] File Scope Variable Declarations and Storage-Class Specifiers - [ ] Long Integers - [ ] Unsigned Integers - [ ] Floating Point Numbers - [ ] Pointers - [ ] Arrays and Pointer Arithmetic - [ ] Characters and Strings - [ ] Dynamic Memory Allocation - [ ] Structures - [ ] A Multitude Of Optimizations ** Fixed - [X] Reasonable parser error messages - [X] Rewrite deprecated temporary file generation method - [X] Cleanup temp files after process end