I sometimes do a bit of teaching, mostly by giving supervisions at Cambridge for some courses I got on well with.
Foundations of Computer Science
This is my Foundations of Computer Science course supervision notes.
Supervision 1 questions only, questions and answers;
Supervision 2 questions only, questions and answers;
Supervision 3 questions only, questions and answers.
Register machine visualiser & emulator
This is a visualiser and evaluator for register machines (the theoretical kind, not a specific CPU). The model is the Lambek/Minsky register machine from 1961 with increment and decrement-with-test instructions.
The example is the same as on slide 30 of the Cambridge Computer Science course, Computation Theory lecture notes.
Lambda-Calculus Evaluator
Type an expression into the following text area (using the fn x => body
syntax), click parse, then click on applications to evaluate them. Also have a
look at the examples section below, where you can
click on an application to reduce it (e.g. click on pow 2 3
to get 3 2
,
then fn x => 2 (2 (2 x))
).
This is ported from my original one at my alma mater webpage, somewhat updated with better diagrams and more modern code.