
Viability of Unpopular Programming Languages (2018) - rfreytag
https://www.johndcook.com/blog/2018/04/17/unpopular-languages/
======
ChrisSD
I think what's missing from this post is _who_ is using a language. For
Haskell it's academics/researchers. For Ada it's the US government and
associated industries. That's what makes niche languages viable, not overall
popularity.

Of course if a language does not have a niche nor popular support then it's
going to struggle more.

~~~
Scarbutt
Yep, that's why Clojure struggling and has no future. Not strong in any domain
and doesn't have any fundamental benefits over other dynamic programming
languages like JS/Python/Ruby.

~~~
lmilcin
That is only if you try to program Clojure as if you were programming
JS/Python/Ruby. In this case I can understand you may think this is funky,
strange but otherwise useless language.

The trick with any Lisp is to "get it". Once you do there is no comparison
between Lisps and any non-Lisp language.

Let's compare it in some useful way. If I was assembly developer for my entire
life, "getting" C++ would be comparable to getting Lisp for any JS/Python/Ruby
developer.

From my point of view JS/Python/Ruby is just a reiteration, variation on
roughly similar, impaired subset of features that I can roll off in Lisp on my
leisure. By definition, any language feature can be written in Lisp (well...
more in Common Lisp than in Clojure which is hindered by its integration with
Java environment) which is something that is really hard to grasp until you
start rolling off your own language for any problem you try to solve (and one
reason Lisp programmers are so much hated by other programmers).

~~~
Scarbutt
Should have phrase that differently. This is a case of "worse is better". I
know Clojure well and, IMO, it's the best language in the world for writing
application/business logic. Many times, when programming in JS/Python, those
just feel stupid to me. But that doesn't stop many programmers from writing
impressive stuff and being super productive in JS/Python/Ruby, why? because
they are great developers and can apply their knowledge to most languages.

Having said that, and going back to the original point, Clojure struggles and
will continue to struggle because it doesn't have any strong hold in any
domain, in contrast to JS/Python/Ruby. Each of these have big ecosystems of
libraries, documentation, big market share in various domains and big job
markets. So yeah, worse its better.

------
cousin_it
TIOBE index methodology: [https://www.tiobe.com/tiobe-index/programming-
languages-defi...](https://www.tiobe.com/tiobe-index/programming-languages-
definition/)

Basically they only look at number of search engine hits for "<language>
programming". That's surprisingly meager. I think a better index of
programming language popularity would use more signals: job listings, open
source activity, stackoverflow questions, surveys of programmers and
companies, etc.

Also it would be good to specify what's meant by "popularity". I'd be mostly
interested in each language's share of paid programmer time, so the signals
above should be weighted to get the best approximation to that truth.

~~~
ACow_Adonis
I agree about specifying what's meant by "popularity".

Thing is I'm actually interested in the complete opposite of what you say
you're interested in.

Couldn't care less about paid programmer time and the job market.

What do people use when they aren't getting paid by someone else to program?
What do they write about? What would they like/want to use? Who's got the
greatest grass-roots/continuing community not focused around apps,
corporations and business sponsorship?

------
Cybiote
It was interesting to observe that since this was written, both F# (from 67 to
32) and Lisp (63 to 29) have risen dramatically on the TIOBE index. Haskell
has also risen from 42 to 39, though not as big a gain as the other two.
Haskell now ranks above Apex while PL/I has fallen below the top 50, where
Erlang has remained. I must live in a bubble since I was surprised to see
TypeScript and Julia rank so low.

It's amusing from a trivia point of view but I don't think such a ranking
should figure in any serious decision on what language to use.

~~~
hota_mazi
> It was interesting to observe that since this was written, both F# (from 67
> to 32) and Lisp (63 to 29) have risen dramatically on the TIOBE index.

The TIOBE index is pretty much meaningless for any language below the #5 spot,
under which the percentages are so infinitesimal that the ordering is
completely useless.

For example, a jump from 63 to 29 means the market share for Lisp went from to
0.12% to 0.37%, and I suspect the error margin is several times that delta.

~~~
Cybiote
That's a great point. I also observed that and the fact ratings seem fairly
volatile outside the top 10. I was only noting positional changes of the
languages mentioned in the article over time.

Its main point of other reasons to to choose a language than popularity is
well taken but I do not thinking making using of the TIOBE index as it does
argues this well.

------
labster
> Advocates consider Perl 6 to be a separate language but outside observers,
> like TIOBE, may not.

Now TIOBE says:

> Some time ago Mantvydas Lopeta suggested to rename Perl 6 to its official
> name Raku. This has been done. Raku is now at position #115 of the TIOBE
> index.

------
TurboHaskal
What makes it viable for me in a professional setting isn't popularity, but
rather any of the following:

\- Is it a first class citizen for the given platform? (What C# is to Windows,
or Objective-C/Swift to macOS, or C to UNIX, or JS to the browser) Really
can't go wrong with this one

\- Does it have a commercial vendor? (VFX Forth, SwiftForth, LispWorks,
Allegro CL, MATLAB...)

\- Does it have a standard? (Probably less relevant these days but still a big
plus to me)

Things like libraries and all that I can do without. They're mostly terrible /
too generic anyway.

Note that some languages I use such as Go, Rust and OCaml don't really check
any of the above, unless you nitpick. But it's not like I'm writing software
with those for the long run (I'm old enough in the industry to think in terms
of decades, and I've been burned by hype trains before).

------
dang
Discussed at the time:
[https://news.ycombinator.com/item?id=16865506](https://news.ycombinator.com/item?id=16865506)

------
nyankosensei
[https://redmonk.com/sogrady/2020/02/28/language-
rankings-1-2...](https://redmonk.com/sogrady/2020/02/28/language-
rankings-1-20/?utm_source=rss&utm_medium=rss&utm_campaign=language-
rankings-1-20)

------
MrK93
With PHP and SQL in the top 10, I'd say that the TIOBE index is just plain
bad. That is all folks.

Also, Rust is not in the top 20? Get out of here, TIOBE index!

~~~
vlunkr
> The TIOBE Programming Community index is an indicator of the popularity of
> programming languages.

This is ranking of popularity only, not any measure of quality. Obviously PHP
and SQL are more popular than Rust.

~~~
fortran77
And higher quality. They have official specs, so there can be multiple
suppliers. Competition leads to quality.

~~~
quelltext
PHP has a spec?

~~~
mappu
The official one is here: [https://github.com/php/php-
langspec](https://github.com/php/php-langspec)

It was pushed quite strongly around the time when HHVM was striving for high
compatibility with PHP (they've since dropped that goal).

~~~
quelltext
That's cool. I had to learn some intricacies of PHP for a job once quite a
while ago and the docs weren't quite sufficient. Could have used that.
Language specs are typically harder to digest then other material but
ultimately you can get all the details out of them you need and they're
typically worth reading.

