Home

Academic

Articles

Musings

Reviews

Technical

For Fun

Personal

Contact

The Feeny Programming Language

February 4, 2020



Feeny is a small programming language designed to include the semantics of many popular dynamically-typed programming languages, such as Javascript, Ruby, and Python, and remain simple enough to implement in one semester.



Feeny was first introduced in the University of California, Berkeley graduate course Virtual Machines and Managed Runtimes taught by Mario Wolczko and Patrick S. Li.



The course walks the class through a from-scratch implementation of Feeny, starting with a simple abstract syntax tree interpreter and ending with a just-in-time compiler. The exercises are self-contained and can be understood by anyone with experience coding in the C programming language.



The full Feeny repository is online on GitHub.



Or you can get a zip file with all of the course exercises here: feeny.zip



-Patrick