Erik McClure

Stop Making Me Memorize The Borrow Checker
I started learning Rust about 3 or 4 years ago. I am now knee-deep in several very complex Rust projects that keep slamming into the limitations of the Rust compiler. One of the most common and obnoxious problems is hitting a situation the borrow-checker can’t deal with and realizing that I need to completely re-architect how my program works, because lifetimes are “contagious” the same way async is. Naturally, Rust has both!

This is a compilation album consisting of remastered older songs, some of which were never released, plus one original song written for the album.

Buy it on Bandcamp for $4, or $6 on Apple Music, Amazon, and other stores. The album is also available on Spotify, Deezer, other online radios, and can be previewed on YouTube or Newgrounds.

This album is a 6 year journey of musical development, as I attempted to move towards a hybrid orchestral sound and weave traditional instrumentation through digital synths.

Buy it on Bandcamp for $8, or $10 on Apple Music, Amazon, and Google Play. The album is also available on Spotify, Deezer, other online radios, and can be previewed on YouTube or Newgrounds.

An AOT (ahead-of-time) compiler for WebAssembly that creates C compatible binaries, either as sandboxed plugins you can dynamically load, or as stand-alone executables that interface directly with the operating system. This allows webassembly modules to participate in C linking and the build process, either statically, dynamically, or with access to the host operating system.

A highly modular game engine built around a Entity Component System, using ordered systems and optimized component arrays. Comes with built-in support for PlaneShader, Box2D, LuaJIT, and TinyOAL, but can easily be extended to unify any set of technologies needed.

An adaptive, hybrid 2D graphics engine with automatic batch rendering. Currently only supports DirectX on Windows, but can be extended to different graphics APIs and platforms in the future. Allows 2D games to integrate simple 3D effects, and allows implementing a fully gamma-correct 2D lighting pipeline.

An anti-spam bot for Discord used by over 1000 servers spanning nearly a quarter of a million users. Primarily designed to detect and neutralize raids or trolling attempts, and to augment discord’s existing moderation tools. Many users joining at the same time will trigger a lockdown to help immunize the chat against raids. Patreon supporters also have access to a chat log that allows moderators to track deleted messages.

4 years in the making, Aurora Theory is a compilation of all the songs I managed to make while attending university. The earlier songs were extensively improved, and all songs were remastered for the album’s release.

Buy it on Bandcamp for $7, or $10 on iTunes, Amazon, and Google Play. The album is also available on Spotify, last.fm, other online radios, and can be previewed on YouTube.

The Bunny Utility Library is a collection of miscellaneous utility code and algorithm implementations in modern C++20.