Jack Bodine
Artifacts are tangible pieces of evidence demonstrating the skills and knowledge I’ve acquired from various learning experiences. Links labeled “currently unavailable” indicate either that I haven’t gotten around to publishing it or that the project contains exam/coursework which must remain private for furture iterations of the course. However, if you email me, I’ll try to expedite it.
November 2023
Erlang-Inspired Parser and Evaluator in Haskell
Advanced Programming
This project involves the implementation of an parser and evaluator for an Erlang-inspired language. The language maintains a simplified syntax and semantics similar to Erlang, focusing on the core concepts of functional programming and message-passing concurrency. The evaluator and parser were developed in Haskell, using monads for handling language features such as function closures, pattern matching, and error handling.
The parser reads the language’s concrete syntax and converts it into abstract syntax trees, which are then processed by the evaluator. The evaluator handles sequential computation within the language, including expression evaluation and variable bindings. Key aspects of the evaluation model include the handling of function environments and exception management, ensuring that the language behaves predictably during execution.
Haskell, Compilers