Remix.run Logo
▲ kombine a day ago

D and Nim have had the same features for years btw.

▲tcoff91 a day ago | parent | next [-]

God I loved playing around with D back in the day when I was in high school. It seemed like a no-brainer that it was going to be huge. It's such a shame it never took off. Incredible language.

▲giancarlostoro a day ago | parent | next [-]

It's so damn nice, its a shame it's never taken off the way it could. I think there's still time to make it attractive to companies, but with people's increasing use of AI I don't think anyone even cares what language their model writes in, look at the insane uptick in Rust programming.

▲vips7L a day ago | parent [-]

I try D almost every year, but I've never really gotten a working IDE environment with it. I'm not sure if it's issues with being on Windows or just the LSP not being that great. I really wish D was adopted as widely as Go.

▲giancarlostoro a day ago | parent [-]

Which IDE are you trying to setup with D? I've not had any issues... You may try DlangIDE possibly?

https://github.com/buggins/dlangide

▲vips7L a day ago | parent [-]

I've tried the intellij plugin and vscode extension. It never seems to work right. I remember there being lots of issues about not finding phobos/the standard library.

▲giancarlostoro 21 hours ago | parent [-]

I dont use VS Code, I think I used Sublime and Spacemacs otherwise I used uh one of the other Linux editors I forget which one tbh

▲vips7L 3 hours ago | parent [-]

I'll try again with sublime next time. I suspect its something to do with how the package manager installs the compiler/runtime.

▲pjmlp 13 hours ago | parent | prev | next [-]

Be it a lesson that having an adoption lever matters.

▲ a day ago | parent | prev [-]
[deleted]
▲sergiotapia a day ago | parent | prev | next [-]

https://github.com/nim-lang/nimony

Check out Nimony effectively Nim 3.0 from the author. It's a top to bottom rethinking of Nim with all the lessons learned. I'm so hyped about it tbh

https://nim-lang.org/araq/nimony.html

▲seanw444 a day ago | parent | next [-]

If they can get the tooling situation handled better with 3.0, Nim will be probably the best all-around programming language in my book. The only reason I tend to opt for Zig instead (and the reason the library ecosystem is pretty small) is that it just feels a little unpolished all over the place. But the core principles are just so good.

I don't mean that as an insult to Zig. Zig is amazing. But the ergonomics of Nim are just unbeatable.

▲Fervicus a day ago | parent | prev [-]

Intriguing. How usable is it right now?

▲bowsamic a day ago | parent | prev | next [-]

It’s pretty obvious why they didn’t, they’re GC by default. That’s already enough to put people off, even if it’s “not a problem” in reality, people will just avoid it for systems programming if they hear that, they will assume all the good features need the GC

▲arc619 a day ago | parent [-]

Nim is stack allocated by default, and you annotate types explicitly with `ref` to use the GC. Even then, the compiler elides reference counting using borrow checks, you can choose different GC options, and the GC isn't stop the world like most. You don't need to touch reference counting if you don't want to, and Nim fits embedded dev pretty well for that reason.

▲bowsamic a day ago | parent [-]

GC was the default in the earlier versions of Nim and ARC is still default today. That’s why people ignore it

▲elcritch 18 hours ago | parent [-]

Nim 2 defaults to ORC which is ARC with cycle detection.

Nim 2 is a great systems language. If you want to avoid possible cycle collection delays just use ARC which is the same as C++ / RAII or Rust's Rc.

▲bowsamic 9 hours ago | parent [-]

You’re missing the point. It isn’t about whether it is or isn’t, it’s about PR

▲bmandale a day ago | parent | prev | next [-]

Many GCed languages have any number of useful features. But when the discussion is focused on systems programming, they are quite off topic.

▲ a day ago | parent [-]
[deleted]
▲giancarlostoro a day ago | parent | prev [-]

I like both of those, I like the idea of Zig, it does seem to be striving to be pure in some areas where C is "king" that other languages gloss over, but Zig is always changing, and its got some elitist people in its ranks that left me not wanting to bother with it. Imagine a programming language maintained and used by geohot clones.