Hacker News new | ask | show | jobs
by huimang 1192 days ago
To be honest, they have good reason. Being written in a strongly typed, memory-safe language is a huge advantage. Obviously it's not the primary thing to look out for, but I do prefer tools that are written in it.
2 comments

There are plenty of strongly typed memory safe languages. In fact I think those are the majority of popular languages.
Yet, almost all the basic tools in a Unix system are written in C.
Of course the person you're replying to is talking about languages without a garbage collector. Systems languages with zero cost abstractions.
But why? There is nothing about a shell that requires zero cost abstractions or no gc. It farms all of its work out to other executables. A shell could be written in literally any language.
I'm not really sure which other popular languages would be considered memory safe AND strongly typed. I know of both C and C++ which I wouldn't consider memory safe. And I know of Javascript, which is not strongly typed... so which do you mean?
Java, Scala, Kotlin, C#, D, Go, and TypeScript to name a few.
Of those only D and Go build self contained binaries (yes i know about Graal/Kotlin Native/.Net AOT). No snark intended.
This is moving the goal post a bit, since the person I replied to was considering JavaScript, but I don’t really think this distinction matters. You get most programs from a package manager.

I am curious though why you don’t count graal or .net aot? They are valid options to produce an aot binary and C# has been able to produce a self contained non-aot runtime for a long a time.

Even Python fits the bill.
> Being written in a strongly typed, memory-safe language is a huge advantage.

Great point, C# is a strongly typed and memory-safe language if you don't use unsafe. So this really is a huge advantage for PowerShell.