Looks pretty accurate to me, actually. Delphi's a Pascal derivative, so Github counts two files[1] towards the Pascal total, and the other top languages [2][3][4] are pretty verbose.
Interesting. Seems this is a recent GNUism, where -b (strip leading blanks) is implied although not stated so in the manpage. I see this in "sort (GNU coreutils) 8.13" but not in "sort (GNU coreutils) 5.93" or BSD sort.
And it still surprises me there are new languages where 'hello world' is more complicated than:
print('hello world')
Dart, which was released two years ago, after JavaScript had been around for two decades and ASI was still considered an issue, still required a semicolon after each statement.
I half feel like pulling out an AST and doing a ModernDart, getting rid of all the redundant tokens and compiling to the } } } } } language we all know and ignore.
There's nothing stopping one from having a non-redundant syntax. Multiple ways to end a line, or mark a block, aren't required to make a language work.
I'm guessing a non-redundant syntax would be very inconvenient to work with for human programmers, in a similar way to how machine code was (not that people can't work in machine code, just that most prefer not to). Also, redundancy is not the only cause of errors, and trying to enforce it might actually make other classes more likely; consider forcing single-statement blocks to not be enclosed with braces.
> I'm guessing a non-redundant syntax would be very inconvenient to work with for human programmers
Python or Coffeescript are fairly non redundant, ask their developers how inconvenient they find it. The parts people tend to complain about, and screw up on, are the few remaining redundant bits, eg,
"Hello World" is a little too simple to even begin to compare languages. Is there a slightly more complex pattern that is (can be) used in these things?
I would have liked to see something more substantial. As it stands (and I'm sorry, I mean no disrespect..), this is quite worthless. I'll spend 30 seconds clicking around random ones and then leaving.
This is pretty cool. Helloworld isn't the best way to judge how high-level a language is, right? From what I understood, CoffeeScript is supposed to improve Javascript's readability, but JavaScript had a much simpler Helloworld program.
It would be cool to see something like this but tiered by some kind of language evolution (group all the Lisps, all the Javascript-functionality languages, the C's, etc).
Helloworld was historically more like a way to make sure your dev environment was setup right (libraries on the path, compiler actually installed). It's short pulls in a library and produces visible results. That's why it was always the intro example not because it was in any way a valid tour of the language.
45 comments
[ 3.4 ms ] story [ 107 ms ] threadThis repo should become a testcase
[1] https://github.com/Prithvirajbilla/helloworld/search?l=pasca...
[2] https://github.com/Prithvirajbilla/helloworld/search?l=actio...
[3] https://github.com/Prithvirajbilla/helloworld/search?l=omgro...
[4] https://github.com/Prithvirajbilla/helloworld/search?l=xtend
> This collection includes 441 Hello World programs in many more-or-less well known programming languages, plus 64 human languages.
edit: my pull request with a fix was accepted
https://github.com/Prithvirajbilla/helloworld/blob/master/ch...
The best (esoteric) programming language.
This is top five:
I half feel like pulling out an AST and doing a ModernDart, getting rid of all the redundant tokens and compiling to the } } } } } language we all know and ignore.
Redundancy leads to inconsistencies and is thus poor design. DRY applies to syntax too.
If there's one way to end a line, then it's used, the line is ended. Nobody in Python or Coffeescript-land misses an additional way to do this.
Python or Coffeescript are fairly non redundant, ask their developers how inconvenient they find it. The parts people tend to complain about, and screw up on, are the few remaining redundant bits, eg,
Because: Rather thanIt would be cool to see something like this but tiered by some kind of language evolution (group all the Lisps, all the Javascript-functionality languages, the C's, etc).
http://learnxinyminutes.com/