
Programming language development: the past 5 years (2011) - alvin0
http://blog.fogus.me/2011/10/18/programming-language-development-the-past-5-years/
======
vvanders
Kinda sad to see the perpetuation of Go as a "systems-level" programming
language. Services-level? Sure.

However, until I can manually control memory it's not going to be a low level
language I want to use.

~~~
dikaiosune
It's how Go was presenting itself in 2011, IIRC. Not so much anymore.

~~~
vvanders
Yeah, I see now that the title was updated to (2011).

------
virtuexru
Interesting; I've never heard of most of those besides Go (& Perl of course).
Is CoffeeScript considered a programming language? :O

~~~
danso
FWIW, the first submitter of this post seems to be Jeremy Ashkenas, who was
the creator of CoffeeScript:

[https://news.ycombinator.com/item?id=3128166](https://news.ycombinator.com/item?id=3128166)

Even if you're being half-facetious...while CoffeeScript seems to have fallen
in favor with the onset of ES6, it's hard to overstate its influence in
2011...Rails, which was most definitely the hott framework du jour, decided to
make CoffeeScript -- along with the much more ubiquitous jQuery and SASS --
part of its default stack: [http://www.rubyinside.com/rails-3-1-adopts-
coffeescript-jque...](http://www.rubyinside.com/rails-3-1-adopts-coffeescript-
jquery-sass-and-controversy-4669.html)

~~~
alvin0
Is there a way to mark duplicates? I did a preliminary search for this topic
via google before the post and this previous one hadn't turned up.

------
kovrik
I find Shen lang interesting, but never actually tried it. Can anyone explain
few things?

1\. Why explicitly call `prolog?` function? Why not make it implicit, so user
could use, for example, `member` function (defined via `defprolog` notation)
as a normal function?

2\. Automatic partial application. I see that example was simplified, but then
how it looks in reality? Because I find (* 2) returning `lambda`, instead of 2
confusing.

~~~
mej10
In math ( * ) is a binary operation. ( * 2) returning 2 is confusing to
everyone that hasn't gotten used to a non-standard way of thinking about * .

~~~
kovrik
> In math ( * ) is a binary operation.

[https://en.wikipedia.org/wiki/Empty_product](https://en.wikipedia.org/wiki/Empty_product)

I am talking about Empty Product.

In all Lisps I know ( * ) returns 1, (* n) returns n. Which makes sense.

Shen's example is confusing for me.

~~~
MichaelBurge
* :: a -> a -> a

Π :: {a} -> a

------
swah
I vividly remember being very excited and optimist about (web?) programming
and our community when _why appeared with his posts about Ruby.

Its probably related to my age as well, but I haven't felt that way again for
a long time now.

------
kristianp
Re: the Ometa language, a sequel that is hosted on Javascript is Ohm:
[https://github.com/cdglabs/ohm](https://github.com/cdglabs/ohm)

------
rurban
Nowadays this list should include pony, wren, vio, Luna, nim, ...

