Skip to content

Latest commit

 

History

History
62 lines (42 loc) · 2.32 KB

README.md

File metadata and controls

62 lines (42 loc) · 2.32 KB

Introduction

This repository contains an implementation (WIP) of a typed λ-calculus, extended to support elementary arithmetic expressions, some syntactic sugar, and more importantly, implements the quantum λ-calculus1 described by Peter Selinger. One might also be interested in Benoît Valiron's thesis.

Implemented in Go; the parsing/scanning stages mimic, for practice, what has been done in the Go compiler itself.

Note: This builds on a previous λ-calculus interpreter, written in Nix's language, and an unpublished partial implementation of craftinginterpreters.com. In particular, I'm recylcing some of the tests from the former, and parsing/evaluation code for mathematical expressions handling from the latter.

Footnotes

  1. Beware, there are multiple papers pertaining to quantum λ-calculus authored by Selinger, e.g. this one.