paperplane

joined 2 years ago
[–] paperplane@lemmy.world 4 points 1 week ago (1 children)

Having the ability to overload functions or constructors without a million Stuff::with_x variants is something I consider more ergonomic and not unsafe. I know the Rust community prefers explicitness in many places, but explicitness and safety are somewhat orthogonal in language design. I consider e.g. Swift to be a safe and ergonomic/sugared language, that borrows, no pun intended, a lot of ideas from Rust

[–] paperplane@lemmy.world 6 points 1 week ago (3 children)

As long as you limit yourself to a subset of modern C++, it's actually a decent language. Less guardrails than Rust, but more syntactic sugar (think overloading, default parameters, implicit this, implicit reference-taking, implicit conversions). You could argue those are anti-features, but even as someone who really likes Rust, I gotta admit C++ is occasionally more ergonomic.

[–] paperplane@lemmy.world 11 points 2 weeks ago* (last edited 2 weeks ago) (1 children)

VSCode + CodeLLDB is great (and FOSS), surprised no one mentioned this yet

[–] paperplane@lemmy.world 5 points 4 weeks ago* (last edited 4 weeks ago)

Seriously. There are a lot of parallels between GPUs (or NPUs for ML inference) and quantum processors in terms of being architected towards a more specialized form of computation and I could totally see QPUs being a thing in the future, probably mostly for number cruncing (see Grover/Shor's algorithms). Though if Grover search suddenly becomes the way of quickly searching for files or something, who knows, maybe this might be more useful for general computing than we think.

In the 80s no one thought computers would be something normal people would use at home, they were seen as a tool for mathematicians and nerds. Now look at the world today. Who knows what the future will hold.

[–] paperplane@lemmy.world 4 points 1 month ago

I know a bunch of larger C++ apps that use vcpkg for cross-platform (Windows/macOS/Linux) builds of their dependencies and it seems to work pretty well

[–] paperplane@lemmy.world 16 points 1 month ago (2 children)

When case insensitivity is the default I always wonder how many apps unknowingly rely on that due to typos somewhere. I encountered this once while porting a Windows/macOS app to Linux that someone imported a module with the wrong case and nobody noticed

[–] paperplane@lemmy.world 5 points 5 months ago

Tbh rust-analyzer is still pretty great. What bothers me more is that Kotlin is pretty much the only language without an official language server, because it doesn't align with their business interests...

[–] paperplane@lemmy.world 2 points 5 months ago

It's opt-in in Swift 5 mode and opt-out in Swift 6 mode, the Swift 6 compiler supports both modes though and lets you migrate a codebase on a module-by-module basis.

Agree that opt-in sort of defeats the point, but in practice it's a sort of unavoidable compromise (and similar to unsafe Rust there will always be escape hatches)

[–] paperplane@lemmy.world 2 points 5 months ago (2 children)

Swift does have data race safety as of Swift 6 with their actor-based concurrency model and are introducing noncopyable types/a more sophisticated ownership model over the next few releases

[–] paperplane@lemmy.world 1 points 5 months ago (4 children)

Swift fits the description too

[–] paperplane@lemmy.world 5 points 5 months ago

Not that specific tbh, most newer native languages these days are compiled and memory safe (Rust, Swift, Go, Kotlin Native, etc)

[–] paperplane@lemmy.world 3 points 5 months ago (1 children)

Coming from Haskell, OCaml always felt a bit strange to me. The double semicolons, the inconsistency in the standard library between curried and uncurried functions etc. Maybe I'm confusing it with Standard ML though, can't remember.

view more: next ›