|   blog   |   blog_archive   |   about   |   contact   |   tutoring   |

Welcome to my site! My name is Waylon, though I often go by waylon531.
I am a programmer and mathematician interested in programming languages 
and operating system development. Here are some of my projects:

* Terra: Terra is a modern web directory. As the web has become more centralized
it's become harder and harder to find cool sites. Terra aims to solve that
by giving me a way to catalogue cool sites and to share them with the world.
The end goal of this project is to build it into some sort of curated search
engine designed to take you to novel and interesting but still relevant sites.

* Wayless: Wayless is a capabilitity-based operating system based off of 
seL4, with a goal of API compatibility. Wayless is currently under heavy 
development and is my thesis project for university. Currently Wayless 
has a basic capability system, and can start up a userspace thread that 
makes use of these capabilities.

* llamdai: LLAMDAi is an interpreter for a purely functional language
that I designed, LLAMBDA, based off of a simply typed lambda calculus and 
with inspiration from Haskell and Lisp. Though the interpreter is written
in Rust, there is a small standard library written in LLAMBDA. LLAMBAi 
is based off of an earlier, ill-fated compiler for this language. There's
a manual for LLAMBDA here

* haffun: haffun is a Haskell funge intrerpreter. It consists mainly of a
library for writing new funges in Haskell but two example funges are
included, a Unefunge and a Befunge. Currently large parts of the Funge-93
spec are implemented though some instructions are missing. I wrote a guide 
for haffun here

* chalk: chalk is a multi-user chatroom application, designed to remedy
the flaws of ytalk and to allow for easier communication. Connection
to a chalk server happens over a UNIX socket, and the protocol is
incredibly simple so it's easy to connect and get talking with a 
program that can read and write text like socat.

* lando: lando is a Rust web application that keeps track of a library
of books for the purposes of lending. You can easily add books via
ISBN, and you search through the available books and check out 
anything that looks interesting. This is to keep track of who's got
ahold of what book -- you can figure out who you lent that copy
of SICP to.

* tf2plug: tf2plug is a plugin manager for the game Team Fortress 2.
Typically tf2 plugins are downloaded from github repositories, so
tf2plug automates this process and makes it easy to keep all of
your plugins up to date. tf2plug is written in nim, and is based
off of an earlier bash script I wrote.