Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Who would have thought that a brand new language wouldn't have the features, library support and optimization that the more popular languages have? Should be obvious, but then you read through HN posts with people dismissing languages like C++ and Java as 'too old' or something and that you need to use some brand new untested language to be worth talking about.

Never select a language based off hearing about it on HN or blogs. Either stick with what you know or use a tool that has very specific optimizations for the problem you're going to tackle (and no, concurrency is not a good option to jump off the JVM as it has incredible concurrency support already: see https://github.com/LMAX-Exchange/disruptor for the fastest concurrent bus I've seen in any language). Of course, there is nothing wrong with testing out golang or haskell - just don't force your paying client to test it out with you or you might be one less client shortly.



There is nothing wrong with testing golang, certainly. But Haskell is 24 years old. Hardly the new kid on the block.


Haskell (and Lisp) will always be 'new'. Especially going by HN posts which seem to think that Haskell is some brand new language created last week to solve the problem of 'side effects' and in a few months time everyone will be using it.


I have spent part of the holidays reading about Interlisp and Mesa/Cedar systems at Xerox PARC.

Quite powerful GUI desktop systems in the early 80s, using language capabilities that are yet to be fully usable in the mainstream.

Lisp on one system, and a GC enabled systems programming language on the other one.

Every time I discovered such systems being ignored most developers, I remember of Bret Victor's talks.


Don't forget Erlang. For some reason a big part of HN thinks it's an unproven technology.


I don't know of anyone who thinks Erlang is unproven. Lots of us think it's weird and not worth using.


Yet, your mobile phone calls might be going through Erlang powered switches.


And my multi kilobuck bank transactions may be powered by COBOL, but you won't see very many developers lining up for that.


Built by a company with the time, money, and motivation to train new hires on an esoteric language that happens to be specifically designed for their unique application.

(Incidentally, my mobile phone calls are quite rare. Voice communication sucks. If your intent was to show that Erlang is important to me, you chose a poor example.)


GHC, the most popular Haskell compiler, is also very mature and very good at doing high-level optimizations.


> just don't force your paying client to test it out with you or you might be one less client shortly.

Author of the blog post here. I agree, in retrospect!


> see https://github.com/LMAX-Exchange/disruptor for the fastest concurrent bus I've seen in any language

The genious behind LMAX is the way they bend Java's object layout features; they achieve nice performance in spite of using Java, not because of it. Some decade old message passing libraries (OpenMP et al.) will probably outperform LMAX without even trying.


Actually, i doubt it. The machine code that ends up running at the heart of a disruptor is pretty minimal, and it executes precisely zero lock or atomic operations when handing an object from one side to the other. I am not aware of any other message-passing system that lightweight. I would be genuinely interested to hear about one.


>Who would have thought that a brand new language wouldn't have the features, library support and optimization that the more popular languages have?

Because there are "brand new languages" out there that are more mature than Go, and better than it for his needs. Scala and Clojure come to mind, but even something like Nimrod would be perfectly capable.

You mention it as if being "new" is some kind of excuse.




Consider applying for YC's Fall 2026 batch! Applications are open till July 27.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: