Visit #00089248
since 2007-09-14
Valid HTML 4.01!
Google
 

Apart from programs I've written for my favourite games, there was a number of other interesting applications I have worked on, during my degree or elsewhere. Here are some of these projects.

WIG Compiler

Introduction

One of my most significant projects during the time spent at McGill was a full-blown compiler. I must say that compiler research is one of the areas of Computer Science that interests me the most. This project was done as part of the compiler course at McGill.

Description

WIG07 is a compiler for creating CGI applications for UNIX. It takes as input the description of the CGI script in a high-level language WIG and produces a C program which can be compiled with GCC on UNIX to produce an executable. You can find a more complete presentation of the program on WIG07 presentation page: http://www.cs.mcgill.ca/~akhass/index.html

The presentation page consists of examples of WIG services created by students in our compiler class, the C code generated by WIG07 for each of these services and the binary executable, produced by GCC, which you can run and see what the final result is. Most of these services are very trivial and do not show much the full capabilities of WIG language; however, WIG service that our group produced is quite significant. It is a text adventure game based on Star Trek and you can try it out.

Naval Battle Game

Introduction

Another interesting project I have been involved in at McGill is a two-player game based on the classical Battleships game but with much more advanced rules.

Description

The basic rules for the game are the same: each player has a fleet of ships and must destroy the ships of the other player. However, ships are much more advanced, have different capabilities and can move. Check out some of the screenshots below.

Screenshots



Screen 1: Player 1 just shot a cannon ball from his Topedo Boat



Screen 2: Player 2 replies with a torpedo launch from his Destroyer

If you want more info on these projects, contact me.