< back to notes
Foundations of Computer Science setup
(last updated on Sep 2021)
I'm teaching 1A Foundations of Computer
Science in Cambridge again
in 2021-22, and here are the various repos used to create the interactive
teaching environment. It may be useful to other professors who are using OCaml
in their courses.
- https://github.com/avsm/teaching-fcs is a private repo, but ping me if
are teaching and I'll give you access (it has coursework answers in it).
We use a Jupyter notebook, with the course written in Markdown using the
mdx OCaml parser which evaluates
toplevel phrases through the compiler and promotes the output directly
into the markdown.
- We then convert the Markdown into Jupyter format using a
fork of mdx, and then
nbconvert it into LaTeX for the printed notes.
- A JupyterLab installation with a
custom OCaml kernel suffices
for the live setup. Every student gets their own container on the server
and one server is sufficient for a full class of ~125 students.
Ping me if you want to know more, or other people who have worked
on this with me are Jeremy Yallop, David Allsopp and Jonathan Ludlam.