Rust vs. Zig and testz

Earlier this year I made the switch from using C++ on my hobby projects to trying out Rust. I spent about 6 months of hobby night-time programming time porting over my 2D game engine and the bulk of my 6502 CPU emulator project. There are a lot of aspects of Rust that are great, but I got tired of fighting the borrow checker left and right. I still feel like I have a hard time expressing myself in Rust.

I had heard about and looked at the Zig programming language before and really liked some of its core concepts such as comptime for doing meta-programming in a much cleaner way than I've seen before. This was back when it was around 0.7 and it was pretty rough around the edges in many other areas though.

I had another look towards the end of summer and found with version 0.11 it struck a chord with me and I've been using it ever since, getting further into a new porting exercise for my 2D game engine and 6502 CPU emulator in less than half the time it took me in Rust. I also wrote a small unit testing library for Zig called testz to improve my testing development flow. ...more

9 min January 07, 2024 #Rust #Zig
Neovim with a Little Bit of Config is Amazing

I've recently switched from using Visual Studio Code as my main editor of choice to using Neovim with the awesome Astronvim configuration and some of my own tweaks on top. It ends up functioning as a great development environment with code hints, debugging, file finder and at the same time uses much less memory. It even has one killer feature over VS Code. ...more

8 min April 18, 2023 #Vim
Rust unit test layout

I've been succeeding in my fourth attempt at learning to use Rust. I come from mostly a C++ background, and I've struggled the first couple of times … ...more

3 min February 18, 2023
FPGA Design for Software Engineers - Docker Builds

As I mentioned in the last blog post I recently switched my laptop over to using Linux as my main OS from Windows 10. As part of that I was going through setting up all of my build tools for various projects and I realized the FPGA build system was a bit more cumbersome than it needed to be and, utilizing docker, it could be made more developer friendly. ...more

3 min February 20, 2021
FPGA Design for Software Engineers, Part 3 - Seven Segment Displays

Last time we took a break from Verilog and hardware design to improve our build system. This time we're back to Verilog and for our next FPGA project we'll create a seven segment driver circuit that will allow us to output hex characters to a single display.

A seven segment display is a set of LEDs arranged like an eight plus a decimal point like you see on cheap alarm clocks and the like.

A typical seven segment display ...more
17 min April 20, 2020 #FPGA #Verilog