Projects
Source Stepper
A lambda-calculus based interpreter for the Source language, a sublanguage of JavaScript, written in TypeScript.
This interpreter steps through and records each reduction step of the program. It can be used for the first 2 chapters of the source language (Source §1, Source §2) as state changes are not allowed in these languages. Idempotency of pure functions ensures the lambda-calculus based reduction rules evaluate the program correctly.
I plan to write an article that explains the workings of this interpreter soon.
Dotfiles
I am now tracking my dotfiles! I also included automated backup and install scripts. Tested on a VM.
Cinnabot
A Telegram bot written in GoLang to serve the residents of Cinnamon College.
It can query for:
- NUS Internal Shuttle Bus timings
- Singapore Public Bus timings
- Cinnamon College events and venue usage
- Frequently accessed links for USP students
Some little scripts
IVLE Downloader (Deprecated)
A downloader I forked to automate the downloading of files from IVLE, my university’s learning management system.
IVLE has been replaced by LumiNUS since Aug 2019. For a LumiNUS downloader, please check out fluminurs!
CS2040 judging bash script
A screenshot of the bash script to automate checking.