Live data from Hacker News

Criticizing Hare language approach for generic data structures

ayende.com

171–180 of 272 posts

Re: Criticizing Hare language approach for generic data structures

#171

Earlier quoted context omitted.

Because software is generally written so that people use it. Memory unsafe languages have proven it's impossible to write secure software in, even by the best of the best developers. That's why I made the comparison with seatbelts. If you want to drive your car on public roads(deliver production software to users) you are not allowed to use memory unsafe languages(you must use a seatbelt). If you just make software f…

I can assure you, the automotive industry uses more C/C++ than you've ever seen. C is used precisely because it's a mature and verifiable language.

I'm not sure what your point is. I didn't claim memory unsafe languages aren't used, they obviously are. C is in fact not an easy language to verify. There have gone trillions of dollars into that and it's still not solved. You can't verify C. You might be able to verify a subset of C. But if you are in any position to choose any other language you should run, run, run quickly and far away from C.

Re: Criticizing Hare language approach for generic data structures

#172

Earlier quoted context omitted.

Because software is generally written so that people use it. Memory unsafe languages have proven it's impossible to write secure software in, even by the best of the best developers. That's why I made the comparison with seatbelts. If you want to drive your car on public roads(deliver production software to users) you are not allowed to use memory unsafe languages(you must use a seatbelt). If you just make software f…

It’s also massively unsafe to drive in general, so we should probably ban the usage of cars wherever possible.

Driving also brings great value. Using C over another language "Because you can't tell me what to do" does not. The more apt comparison would be if we had fully self driving cars that are proven to make almost no mistakes. And then still wanting to drive a car yourself on public roads, endangering yourself and others.

Re: Criticizing Hare language approach for generic data structures

#173

Earlier quoted context omitted.

Imagine if we’d had the opportunity to complain about PHP or JS back in their early days, and had the opportunity to fix some of their awful decisions _before_ they became practically set in stone?

There is a distinct difference between PHP, JS and Hare. Hare is being developed and designed with a particular point of view by a developer and early adopters who are passionately supportive of that POV. PHP and JS were both thrown together with minimal direction and to achieve specific goals in as fast a time as possible (if I am remembering both languages begins correctly). It could be possible that another langua…

Simply, it is a bad point of view, and deserves discouragement in exact proportion to the amount of promotion it gets. He wants it both ways, and does not deserve that.

Re: Criticizing Hare language approach for generic data structures

#174
post #94

Earlier quoted context omitted.

That's a great way to make a program work only on specific distros.

Seems it fits Hare perfectly then, as one of the explicit goals of Hare is to only support non-proprietary OSes.

I'd guess it does the opposite?

If I'm writing for a proprietary OS, that's probably Windows or OS X. Both of which give me a more stable target to aim at when it comes to what dependencies I can expect.

If I'm writing for an open source OS, that's probably some flavor of Linux. But which flavor? And which package manager does it use? And do they support all the dependencies I need, in the versions I need? Without pulling non-standard package repositories into the mix?

When open source software has difficulty working on proprietary OSes, I think it's usually not because of the package manager. More often it's because of something like a glibc dependency. At which point the domain of support isn't really "open source OSes", it's usually something more like "glibc-based linux distributions."

Re: Criticizing Hare language approach for generic data structures

#175
post #149
post #128

Earlier quoted context omitted.

> Why do people spend so much energy shooting down a language nobody uses? If you don’t like it you don’t have to use it. Because this language isn't made by a nobody. It's made by a popular person with a following, so the language _will_ get used by a non-insignificant number of people. And those people _will_ (re)implement all the things that you want a language to have (database connections, networking libraries,…

But why be the one to shoot it down? If the industry makes mistakes, that's not news.

> But why be the one to shoot it down?

It's a very young language. One might consider that early mistakes can be addressed, but only if somebody speaks out about them.

I question framing this question as "shooting it down." The project will clearly survive this criticism. The article is by somebody who took the time to learn the language, and will probably continue to invest their time into the language. Criticism of this kind is a gift.

Re: Criticizing Hare language approach for generic data structures

#176
post #141

Earlier quoted context omitted.

I’m allowed to have opinions about what tools should be used for what. I think it’s fair to say you shouldn’t write a production HTTP service in assembly, for example.

The problem with this is that you're now the Ministry Of Truth of programming tools.

Doesn't even make sense. The Ministry of Truth is tasked with rewriting the past to match the present.

Re: Criticizing Hare language approach for generic data structures

#177

Earlier quoted context omitted.

Honestly memory unsafe languages shouldn't be used with exception of very few corner cases. It's the same reason why we no longer allow cars without seatbelts. You don't go around saying that seatbelts shouldn't be mandatory because you don't need them.

What's with this obsession about what other people do? You don't have to use a memory unsafe language, but others might.

> You don't have to use a memory unsafe language, but others might.

And we're telling them they shouldn't.

Re: Criticizing Hare language approach for generic data structures

#178
post #168

Earlier quoted context omitted.

> And those people _will_ (re)implement all the things that you want a language to have (database connections, networking libraries, (de)serialization libraries, etc.). And these things, which can be performance/security-critical, will be impacted by the issues people are pointing out. This language is only available on platforms where you are free to choose whatever software you want. If you think a Hare program is…

What happens when your financial institution or your doctor, whose IT departments run Linux on their servers to handle your personal data, install such insecure software?

The same thing that happens when they use any other insecure software.

Re: Criticizing Hare language approach for generic data structures

#179

Earlier quoted context omitted.

Because software is generally written so that people use it. Memory unsafe languages have proven it's impossible to write secure software in, even by the best of the best developers. That's why I made the comparison with seatbelts. If you want to drive your car on public roads(deliver production software to users) you are not allowed to use memory unsafe languages(you must use a seatbelt). If you just make software f…

It’s also massively unsafe to drive in general, so we should probably ban the usage of cars wherever possible.

We license people to drive and have a legal system for dealing with irresponsible drivers.

Re: Criticizing Hare language approach for generic data structures

#180
post #143

Earlier quoted context omitted.

A person's actions sometimes have effects on other people. Such as not wearing a mask, for example. Or writing some piece of obscure but critical infrastructure with a memory vulnerability that causes all someone's precious apes to be stolen.

> Such as not wearing a mask, for example. That's pretty rich

How so? I'm sure you take my point: that by indulging selfish wants, we can harm others. Private situations, do what you like; shared or social contexts, not so much.
Post reply on HN