4 ms·
There really are only three ways to create a usable language, honestly: 1) Huge institutional support. See: C#, Java, Go. 2) Give it 20 years. See: Python
by tdees40 12y ago
There really are only three ways to create a usable language, honestly:
1) Huge institutional support. See: C#, Java, Go.
2) Give it 20 years. See: Python, Haskell.
3) Weird, idiosyncratic factors. See: Javascript, mostly.
So it's hard for me to get excited about these sorts of things.
Edit: fair point, Javascript is really a case of #1, with Netscape as the institution.
- zabcik 12y agoI think it's only the first two. Javascript happened because of Netscape (1).
- skrebbel 12y agoYou're missing 4) piggybacking on existing ecosystems. E.g. Scala, Clojure, F#.
- def- 12y agoIn Nimrod it's easy to piggyback on C, which has the most extensive ecosystem of all languages.
- sanderjd 12y agoBut C's ecosystem is so extensive that everybody can piggyback on it (with varying levels of ceremony).
- tdees40 12y agoSee CPython, Haskell, C++....
- sitkack 12y agoThis might already exist, but if Nimrod could piggy back on Javascript (Node), Python and Ruby for libraries this would be huge. Native glue.
- ascent 12y agoThis is what Perl6 with Parrot VM aim for. http://en.wikipedia.org/wiki/Parrot_virtual_machine http://en.wikipedia.org/wiki/Parrot_virtual_machine
- Pacabel 12y agoI don't think that we can really consider Perl 6 and Parrot to be anything but abysmal failures at this point. The people developing and advocating for them have had many years now to product something that's even minimally usable, and we just haven't seen that happen. Writing traditional compilers and interpreters, or emitting C, or targeting LLVM have all proven to be good ways of getting production-grade programming language implementations created and usable quickly. Messing around with Parrot has never resulted in anything useful.
- chromatic 12y agoThat was the goal, but Parrot failed to meet that goal and P6 is years away from being usable.
- S4M 12y agoHow about Perl, Ruby and C? pg said that for a language to become popular, it has to be the scripting language of something popular. That's the category where the three languages I mentioned are falling. So the answer is simple: one has to build something really nice in Nimrod and use Nimrod as the extension language of that thing. Maybe the embedded world would be a nice field from Nimrod due to having nice interop with C? (I haven't used Nimrod in my life yet, although I am tempted because it looks very easy).
- tdees40 12y agoPerl is a (3) as it was the scripting language on *Nix, and CGI was pretty crucial in the early web. Ruby I guess is a (3): Rails is a killer app. C, well, it's the a major accomplishment of human civilization and has held up for half a century. I'd call that idiosyncratic.
- WaxProlix 12y agoI feel like Lua is used pretty broadly for UI scripting in the games ecosystem (addons, plugins, etc) but I don't see it used really anywhere else aside from maybe IRC chatbots. Being the scripting language for something popular is maybe a necessary but probably not sufficient condition.
- pjmlp 12y agoC had AT&T and was UNIX system programming language. As UNIX spread into the industry, so did C. All languages required by OS vendors as the official ones to target their OS, succeed in the market if the OS succeeds.
- tlo 12y agoTrue, Objective-C comes into mind.