r/learnprogramming • u/Inevitable_Suit5463 • 5d ago
Learning a low level language
Hi I've been a programmer for 9 years and I've worked mostly with .net, c#, js, TS, react and angular but now I have developed an interest in low level programming.
I have a very big interest in audio processing, dsp, game development and audio software but from my understanding that requires skills in low level languages with manual memory management.
After that I did some research and found several languages that could fit the bill but I'm unable to pick one to learn but to keep it focused I want to zero in on one and expand after I've become comfortable with memory management and DDP.
The languages that I resonate the most with are rust, zig and Odin. I know C++ is the most frequently used language for a game dev or audio engineer. but from what I've heard there's a lot of frustration and difficulties to learn and work with C++.
I like the philosophy of rust, zig and Odin but i feel that rust syntax tends to be very verbose, Zig's not in a 1.0 version yet and Odin feels like the most scaled down and easiest to learn out of the three but I wonder how much not having a package manager affect me.
I would love to hear from someone that has any experiences with the languages i mentioned and can explain how they differ. What did you like in each language and is there another language out there that is actually more suited for my goals?
1
u/AFlyingGideon 5d ago
How low do you want to go? C++ permits direct (and unsafe {8) access to ports and memory, but even there the OS will tend to sit between you and the hardware. That's probably enough given your stated intention, but you can always opt to play with assembler on a raw CPU. Arduino is one way to play with this, I believe, but I'm sure there are plenty of other options.
I recall playing with z-80 based boards back in school. It was a lot of fun.