Have a UROP opening you would like to submit?
Please fill out the form.
Bootstrapping a parser for a new Python-based programming language
CSAIL: Computer Science and Artificial Intelligence Lab
Ariya Shajii: email@example.com
Seq (https://seq-lang.org) is a new Python-based programming language with a focus on bioinformatics and computational genomics, which aims to marry the performance of low-level languages like C or C++ with the usability and familiarity of high-level languages like Python. Seq's parser is currently implemented in OCaml, and it's backend in C++ using the LLVM compiler infrastructure. In this project, we will be implementing a new parser for Seq... in Seq itself! Seq's syntax, semantics and core language features are all equivalent to Python's, so a knowledge of the Python language should make learning Seq very seamless. We hope to use this project to also guide us in terms of what new language features to add so as to facilitate implementing a fully-fledged parser.
- Computer science background - Familiarity with the Python programming language - Familiarity with compiler design and parsing techniques (e.g. 6.035)