Avatar

philm

philm@programming.dev
Joined
1 posts • 24 comments
Direct message

have an even cleaner architecture

Although I’m fully in camp functional, I doubt that. There are problems that are inherently stateful and rely on mutability. Modelling that in Haskell often results in unnecessary abstractions. I think Rust hits a sweet spot here (when you’re that experienced to write idiomatic Rust, whatever that exactly is). Also being lazy by default has its own (performance) implications, strict + lazy iterators (like Rust) is a good default IMO.

permalink
report
parent
reply

Thanks for the link.

It would be interesting, whether this handles macro-expansion as well (I doubt that, haven’t looked into detail yet though).

permalink
report
parent
reply

Actually it’s been so stable for me for at least a year (not sure when I switched exactly), that this post kind of surprised me, I thought it was > 1.0 already

permalink
report
parent
reply

True, Python has a very big userbase and a lot of cool libraries and is nice to quickly hack something together.

Though the title of the post is

If you had to choose one programming language that you had to use for the rest of your life, what would it be?

So TMU I want to predict the future in a way that it positively affects me, and find a language that fulfills this role best (throughout the stack, so that I’m not limited). And honestly I wouldn’t want to touch Python with a long stick, if the project is moderately complex (and isn’t easily off-loadable to native libraries that Python builds upon) and say > 5000 LOC, the super dynamic nature of python is a curse in this regard.

permalink
report
parent
reply

Behold, Rust is blazingly fast in approaching the most popular language :)

Also, in comparison to Python you can do pretty much everything throughout the stack, which would be the reason I would go for Rust (not mentioning all the other niceties it has to offer).

Also learning Rust nowadays is much more approachable compared to say 7+ years back (ecosystem got way better)

permalink
report
parent
reply

Drew Devault’s Hare language

Ok, they say “use your distros package-manager”, that’s basically asking for the same disaster as C or C++. I think cargo is one of the selling points of Rust.

At least say something like we use “Nix” for default package-management (which does a lot of things right)…

permalink
report
parent
reply

I think it’s not that bad yet, when comparing with npm. Usually the dependencies I use are of very high quality. But I’m also very selective with dependencies. I’m rather writing a simple part myself, than using a not-really maintained low-quality dependency…

Btw. I have not looked into the Hare language yet (will do that now), but if it’s similar as deno, I won’t like it. You want to have some kind of package management IME…

permalink
report
parent
reply

Not him, but I much more like the type-system of rust (e.g. enums).

permalink
report
parent
reply

Yes, and Rust with incremental compilation is pretty fast to iterate as well, as long as you don’t use massive libraries/build-scripts etc.

permalink
report
parent
reply

Yeah the way you need to maintain two codebases: one for types and one for actual logic is annoying.

Also nix is purely functional (which is necessary, for more information read the Nix Pills), Typescript is not, so unless it’s only a purely functional subset or severely limits Nix (in the form of abstractions, after skimming over it, I think this is the case), it will run into issues…

permalink
report
parent
reply