Live data from Hacker News

Dart 1.0 Is Out

news.dartlang.org

161–162 of 162 posts

Re: Dart 1.0 Is Out

#161

Dart seems interesting, but its sponsorship by Google creates a major problem - what incentive does Microsoft, Mozilla, or Apple have to implement Dart support in their browsers? What about JavaScript devs who choose not to support Dart (especially since many still have to support even as far back as IE8 due to enterprise/companies/organizations/schools that opt for long-term support solutions for software)? I don't…

Maybe a first step into getting some type of vm into the browser that is performant and allows multiple languages to run against it like the JVM?

Re: Dart 1.0 Is Out

#162

Earlier quoted context omitted.

It's important to remember that the "goto" Dijkstra is talking about is very different from the "goto" that C programmers use. He's talk about unstructured goto: jumping from the middle of one function to another, or across scopes . "Goto" as another local flow control construct is relatively innocuous.

Indeed. Dijkstra was frequently wrong, especially when he made grand sweeping statements. GOTO is a good example, 'GOTO considered harmful' is practically biblical law amongst many programmers, but it's worth remembering that he made that statement in the context of an argument with Donald Knuth. Knuth won: ( http://pplab.snu.ac.kr/courses/adv_pl05/papers/p261-knuth.pd... ) http://web.archive.org/web/20070927094626/h…

How do you mean "Knuth won"? Can you paraphrase the paper? I couldn't find a one phrase or proof of this "winning".

Here is what Dijkstra said:

> "The go to statement as it stands is just too primitive; it is too much an invitation to make a mess of one's program. "

How does Knuth win that?

In any case, I think there is a popular understanding of that phrase. It entered folklore to mean something else and regardless if that something else is different, it does make sense.

Excessive GOTOs complicate code and create a spaghetti mess. Today we don't need scientific papers on it. That is how I understand it.

The general idea is that there are better construct and better paradigms out there. Not all programming construct are strictly equal in practice. Yes all languages that are Turing complete can do the same kind of things. We know the theory. But it turns out some paradigms are better than others. OO programming, despite it being hated and derided today, was a better idea that writing lots of GOTOs. Functional programming with immutable data-structures does make sense in a distributed and concurrent environment. STMs compose better than locks and mutexes and so on.

Post reply on HN