Skip to content

namin/metaprogramming

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

metaprogramming

Course on Metaprogramming

Originally: University of Cambridge, UK Michaelmas Term 2018

Currently being updated for 2025

Highlights

  • Lecture 1-lisp shows a metacircular interpreter that can evaluate itself, and also an extension towards a reflective tower.
  • Lecture 2-proof-by-reflection revisits the reflection principle with an example from the seminal FOL to Lean.
  • Lecture 5-smt shows how to use SMT as a backend, by presenting a small verifier from IMP to SMT via verification conditions.

Course Links for Original Edition

Lecture Notes

Solution to Assignment 1

The solution to assignment 1 has been released as part of the Lisp Variations used to create it.

Installation

for Scala code

Releases

No releases published

Packages

No packages published

Contributors 5