To-do list


Add my testimony

Add creeds and confessions

Add more evidence for Trinity

Add Glossa Ordinaria transcription

More information about websites

Tagging/searching too? Perhaps a db backend?

Project ideas

Distributed path tracer

Distributed in the sense of across a network. Clients submit tasks to a scheduler which allocates tasks to workers. Path tracing is inherently very parallelisable, so it is well-suited to this sort of setup.

Scientific programming language

With units as data types, probably for use for quick calculations, for example by students.

Parser generator(s) in C++

To be like lr0, my Java-based parser generator, but improved upon. This would be useful for a lot of my other projects, especially language ones.


An idea which I've been meaning to make for years. Something like Geocaching, but for exploring the web. This could be expanded to a broader scope, being able to tag anything, physical or virtual.

Stop motion JavaScript framework

WoT messenger

Vector printer

Concurrent/distributed programming language

OS based on packages, services and a unified scripting language

Blockchain based domain names

A very small raycaster

A raymarcher

A programmable interpreter or compiler

Given a grammar, a number of rules to check statically (e.g.~typing rules, effect system rules), and a number of small- or big-step evaluation rules, interpret (or compile?) source code.

Current projects


A networked display server with a focus on IoT devices. My third year project at university. Needs adding to website.


An untyped lambda calculus interpreter. I think I will completely re-write what I have of this (perhaps using the programmable interpreter/compiler).



Project documentation

I need to add technical documentation for my projects. I think I'll create a separate page within each project directory for this - perhaps two, one for the user interface and one for the source code.

Add all projects to git

Most of the projects on this site are available from my git repositories or on GitHub, but some still aren't.

Rewrite some project pages

Some of the project pages were written many years ago when I first made this website and don't really suit it now.

Post-receive git hooks

In order to keep live demos and other files up-to-date with the current git branch, I will add some git hooks to automatically create these files.


I currently use textc's inbuilt timestamp comparison system for skipping pages which don't need to be recompiled, but this doesn't offer as much control as using Makefiles, so I want to switch to using Makefiles for deciding whether to recompile (though textc will still be used for the compilation itself).

This list

Bring this list up to date

Decide on whether to go for page/ or page.html

Add my own RSS feed

Add combined RSS feed or RSS feed list

Add page for reblogged posts?

Improve backend infrastructure