A high level, optimizing model simulation language founded on set theory!
The repository is organized as follows:
.archive
: Older work that may still be relevant to future progressimplementation
: Code for the first version of Simile, corresponding to the paper indocs/implementation_v2
.
docs
: Everything documentation-related: Reports, Assignments, Specifications, and Papers.ADT
: A Survey of Abstract Data Types (in several languages)implementation_v2
: Revised report for a prototype set-theory based compiler. Corresponding implementation is in.archive/implementation
.synt_2025
: Abstract submitted to the SYNT 2025 workshopterm_rewriting
: A Survey of Term Rewriting for Compiler Optimizationtrs_specification
: Complete TRS Specification for the Simile Compiler
meetings
: Meeting notes for discussions involving Similenotes
: Research notesexamples
: Gathered/derived model simulation examples that make use of set theory
packages
: Python packages for Similesimile_compiler
: Actual contents of the compiler, from lexer to code generationsimile_jupyter_extention
: TODO, a jupyter extension to recognize Simile syntaxsimile_jupyter_kernel
: TODO, a jupyter kernel to execute Simile
proposals
: Proposals discussing the problems and justification of our worksynt_demo
: Mostly a playground for messing with examples used in the SYNT 2025 demo. This will be archived after August 2.
DOES NOT WORK YET
Run:
pip install -ve packages/simile_compiler
pip install -ve packages/simile_jupyter_kernel
pip install -ve packages/simile_jupyter_extension
jupyter labextension develop --overwrite packages/simile_jupyter_extension
Check that the kernel is installed properly by running the following command without error:
jupyter console --kernel simile_kernel
pip install pydoctor
pydoctor --make-html --docformat=google --html-output=generated/api_docs/ packages/simile_compiler/