Projects
I’ve been fortunate that my hobby and career are both about software. This page contains links to some of my free and open source programming projects.
DotGNU
I contributed to the DotGNU project back in 2003 to help the open source community develop a free open source implementation of .NET that runs on Linux. I was in charge of implementing threading and maintaining the garbage collector.
Example of some of the code I wrote for DotGNU:
http://git.savannah.gnu.org/cgit/dotgnu-pnet/pnet.git/tree/engine/lib_monitor.c
http://git.savannah.gnu.org/cgit/dotgnu-pnet/pnet.git/tree/support/interlocked_x86.h
http://git.savannah.gnu.org/cgit/dotgnu-pnet/pnet.git/tree/support/interrupt_win32.c
http://git.savannah.gnu.org/cgit/dotgnu-pnet/pnet.git/tree/support/thread.c
Mono
I implemented the first ECMA compliant implementation of ArrayList for Mono…back in the day.
https://github.com/mono/mono/blob/master/mcs/class/corlib/System.Collections/ArrayList.cs
StreamingKit
A fast and extensible gapless AudioPlayer/AudioStreamer for OSX and iOS (iPhone, iPad). Used by many music player apps on the App Store.
PlatformKit
A library of useful classes and extensions for modern Objective C.
Platform.NET
A cross-platform library of useful classes and extensions for C#, .NET and Mono.
Platform.VirtualFileSystem
A .NET library that provides a uniform, cross-platform and managed abstraction layer for file systems. It is similar to VFS features of various operating systems like Linux except it all runs in managed code.
P++
A compiler and interpreter for a programming language I designed in 2000.
PowerMenu
A tiny but powerful application I wrote back in 1998 that adds “Always On Top”, “Transparency” and “Minimise To Tray” to the windows control menu.
VNCX
A VNC ActiveX control for integrating VNC client functionality to Windows C++, MFC, VB, C#, etc projects. Written in 1997 when I was still in High School. Multi-threaded and insanely fast.
Leave a Reply