zhiayang

Contact

Email: zhiayang gmail com
Github: github.com/zhiayang
github.com/flax-lang

Proficiencies

In decreasing order of ability:


Personal Projects

Flax

2014 – now

Flax is a statically and strongly typed general-purpose programming language created as a personal replacement for C++.

It is a low-level, general-purpose language offering pointer and memory manipulation, while having high-level constructs such as automatic reference counting, type and function polymorphism, object-orientation, and compile-time execution.

The result of 5 years of ongoing labour (and several rewrites), Flax currently possesses these features:

  • Struct and Class types
  • Function overloading
  • Parametric types and functions
  • First-class functions
  • Operator overloading
  • Full compile-time execution

[mx]

2011 – 2016

[mx] started its life way back in 2011 with a name lost to the depths of time, as an ill-conceived foray into the field of kernel programming. The spirit of that initial leap survives in [mx] as the fifth iteration of the project.

Before abandonment due to instability, it boasted several features that would work intermittently and often mutually exclusive of each other:

  • Pre-emptive multitasking
  • Executable loading (static linking only)
  • Ring-3 userspace with homegrown libc
  • Basic self-rolled TCP/IP network stack
  • ATA reading over DMA and PIO
  • FAT32 read support

Unfortunately, I could never really fix the heisenbugs that kept cropping up, and so development lost its inertia and slowed to a halt by the end of 2016.

[mx] may be picked up again in the future, perhaps as a continuation or as a rewrite — who knows.


Qualifications

2017 – 2019

National Service
Singapore Armed Forces

Skills gained include:

  • Firing a rifle
  • Digging a trench
  • Throwing a grenade (once)
  • Getting really good at Excel and VBA

2015 – 2016

GCE A–Levels
Hwa Chong Institution