Hi, I'm Chris.

A pragmatic programmer who loves solving problems.

About Me

I'm a final year Computer Science student at the University of Kent, especially interested in Functional Programming, Web Development and Artificial Intelligence.

I enjoy working in multiple domains, on multiple things — solving interesting problems and learning more is what drives me.

Skills I have

The languages I most enjoy working with are Erlang, and JavaScript, most of my hobby projects are made with these.

I also have working proficiency in OCaml, PHP, Java, and Lua, and have tinkered around with C and C++ for an occasional project.

I have UNIX experience, and use a UNIX-like environment (WSL) as part of my day-to-day workflow.

I enjoy design-oriented work also: I got into programming by playing around with GameMaker 5.3 and modifying open source projects in it, mainly tinkering with level design or sprite modifications.

In my spare time I enjoy drawing, painting and cooking.

Ongoing Projects

Jarlang - An Erlang compiler targeting the web

Jarlang is a compiler which outputs JavaScript for use on the web.

It works by transforming an Erlang Abstract Syntax Tree into an equivalent JavaScript one, and simply generating the resultant code.

This code is then run alongside the Jarlang runtime environment which allows us to emulate actor-model concurrency, all of Erlang's datatypes and more.

Jarlang on GitHub Jarlang's Homepage

Erlpkg - EScript builder, utilities & boilerplate

Erlpkg is an Erlang utility which helps you build 'better' EScript packages.

It exposes a simple CLI allowing you to bundle any files/directories you want into an EScript, and allows code in the resultant EScript to call Erlpkg's utility modules for niceties such as argument parsing, package reflection & extraction, and CLI utilities.

Erlpkg can also generate project boilerplate for you, and is also easy to integrate into existing projects.

Erlpkg on GitHub

Gourmake - Creative recipe inventor

Gourmake is a project I'm currently doing for my Computational Creativity module at University.

It is currently at a proof-of-concept stage, but once it has matured I'll be sharing the code on GitHub.

Gourmake invents new recipes based on existing recipe makeup frequency analysis, intelligent database searches, markov chains, and hopefully in the future, genetic algorithms.

Get in touch

Feel free to send me an email via the form below and I'll get back to you as soon as possible. Alternatively, feel free to reach out via GitHub or LinkedIn.