this post was submitted on 12 Feb 2026
64 points (100.0% liked)

Learn Programming

2087 readers
24 users here now

Posting Etiquette

  1. Ask the main part of your question in the title. This should be concise but informative.

  2. Provide everything up front. Don't make people fish for more details in the comments. Provide background information and examples.

  3. Be present for follow up questions. Don't ask for help and run away. Stick around to answer questions and provide more details.

  4. Ask about the problem you're trying to solve. Don't focus too much on debugging your exact solution, as you may be going down the wrong path. Include as much information as you can about what you ultimately are trying to achieve. See more on this here: https://xyproblem.info/

Icon base by Delapouite under CC BY 3.0 with modifications to add a gradient

founded 2 years ago
MODERATORS
 

I don't need something practical. I just need something fun to keep me motivated.

you are viewing a single comment's thread
view the rest of the comments
[–] DaPorkchop_@lemmy.ml 6 points 2 days ago (2 children)

This is probably an unpopular opinion, but I find modern C++ with templates and constexpr to be quite fun, mainly from the perspective of trying to do as much at compile-time as possible. Most of the resulting code is nearly incomprehensible and never gets used for anything outside of a godbolt demo, but trying to do complex tasks within the limited and unintuitive world of compile-time evaluation is something I've never really been able to find in any other language.

~~i don't want to hear about rust, const generics are almost useless and you know it, specialization isn't really a thing and nothing like variadic templates exists yet~~

[–] ageedizzle@piefed.ca 1 points 20 hours ago (1 children)

~~i don’t want to hear about rust, const generics are almost useless and you know it, specialization isn’t really a thing and nothing like variadic templates exists yet~~

What is your honest opinion about Rust? I'm curious

[–] DaPorkchop_@lemmy.ml 1 points 8 hours ago* (last edited 8 hours ago)

Rust has a lot of cool ideas (I love the borrow checker), but in its current state I don't think it can replace C++ for the things I'd be interested in using it for. 99% of the time when I reach for a natively compiled language it's because I need to do some performance-critical loop I can't reasonably implement in the language my business logic is written in (normally Java), and I end up in a situation where most of Rust's advantages (and C++'s footguns) aren't really relevant (lifetimes don't matter if I'm just writing some SIMD code which reads/writes into externally allocated memory segments). So for my purposes, Rust is mostly just a worse version of C++ in that it's missing a bunch of features I want (my main gripes already listed above) and has a bunch of cool features that I don't care about.

If I were writing an entire program from scratch I'd probably opt for Rust over C++, at least for the bulk of the business logic, but I don't think Rust has quite achieved its ideal of "zero-cost abstraction" for many performance-critical use cases, and certainly not most of the ones I actually have.

[–] orclev@lemmy.world 1 points 1 day ago

You should check out Zig's macro system, I think you'll find it really interesting.