Projects

Here are some of my past and current projects.

Alex's Anthology of Algorithms:
Common Code for Contests in Concise C++

Alex's Anthology of Algorithms: Common Code for Contests in Concise C++ (A3C5) is a concise codebook with a not so concise name! Compiled over the years from my experience doing contests, this extensive anthology contains algorithms and data structures ranging from shortest paths to link-cut trees. The selling-point is that each topic is implemented in a generic, concise style specially tailored for contests. This is a work undergoing review, though I expect to have the project finalized in a few months time.


Syntaxilizer: A Formal Language Analyzer using Backus-Naur Form

If you like computational linguistics, then you've probably already heard of the Backus-Naur Form for context-free grammars. Syntaxilizer is a no-nonsense parser I started after discovering (to my surprise) that there existed no such parser tool on the web. The program lets you input a standard BNF definition and an arbitrary phrase to be analyzed. In return, you'll find out whether it matches the definition and see a breakdown of the text in terms of clauses in your definition.

Syntaxilizer Preview

LazerMazer: A 2D Maze Game with Lazers™

LazerMazer is a 2D game I wrote in high school. You're trapped in series of dark mazes and must guide yourself out using nothing by a powerful laser. Watch out for enemies and don't let your life force deplete!

I'm currently working on porting it to JavaScript. Meanwhile, you can try my original version written in Java. To play, you will first need to install Java 7 or 8 ( download). Then, do the following:

  1. Extract the zip file to anywhere you like.
  2. Go into the extracted folder and run the LazerMazer.jar file.
  3. Enjoy the catchy main menu theme for a minute before clicking Play to start your journey.

Ongoing


PEG Judge
PEG Online Judge

The PEG Online Judge is a platform where you can practice your problem-solving skills on a thousand (and counting!) high quality programming problems. I have helped upload and maintain a good majority of these, and currently serve as an administrator of the site.

Visit the PEG Judge at  wcipeg.com.


Woburn Challenge

The Woburn Challenge is a computer programming competition geared towards Canadian high school students. It had been a tradition of Woburn C.I.'s Programming Enrichment Group since the early 1990s, until it was discontinued a decade later. In 2015, a few friends and I decided to jumpstart this enrichment opportunity once again in order to give back to the community which made us who we are today. I currently serve as contest director, where I organize logistics for the rounds and help develop questions.

Visit  woburnchallenge.org or like us on  Facebook.