News for hackers. Stuff that matters.
Re:Great Works in Programming Languages (2004) by arethuza on Thursday June 13, 2013 @06:37AM (#5873283)
The relationships between theoretical innovations and practical innovations is particularly indistinct in Computer Science.

A language like JavaScript might be interesting because it is simple and ubiquitous and embedded in a powerful application platform - but that does not mean it is of much interest from a theoretical CS perspective.

Re:Great Works in Programming Languages (2004) by csense on Thursday June 13, 2013 @07:50AM (#5873515)
> that does not mean it is of much interest from a theoretical CS perspective

JavaScript theoretically uninteresting? Are you kidding?

What about its unusual prototypical inheritance? JSON-style literals? Its notation for anonymous functions? The approach modern JS frameworks take to single-threaded asynchronous execution?

IMHO, JS is not the best language for getting work done [1], but it has lots of innovations which are worthy of study.

[1] If you need to do Web frontend stuff, obviously JavaScript is the only game in town, unless you're into Flash, Java applets, or compilers with JS backends.

Re:Great Works in Programming Languages (2004) by octo_t on Thursday June 13, 2013 @09:28AM (#5873893)
It can certainly be interesting, but most of the interesting research being done is related to the intersection of languages and security. There do exist formalisations, but they are derivative works based on the GREAT papers.

Notation is for the most part boring. The way you write function literals has no effect on the semantics of the language.

The prototype inheritance is also boring, the small step semantics being two inference rules[1].

JSON-style literals are what. A way of writing a POD. Who cares. It is boring.

Asynchronous execution is also boring. It was novel in the 1960s, it is not novel now.

[1] - http://www.doc.ic.ac.uk/research/technicalreports/2008/DTR08...

Re:Great Works in Programming Languages (2004) by arethuza on Thursday June 13, 2013 @10:31AM (#5874205)
"Notation is for the most part boring."

Unless, of course, when your work involves using the notation a lot.... then people get really picky about it.

Re:Great Works in Programming Languages (2004) by octo_t on Thursday June 13, 2013 @11:25AM (#5874536)
There is interesting stuff about notation (in my opinion to do with parsing but perhaps thats my bias speaking), but people being "picky" about notation is theoretically dull.
Re:Great Works in Programming Languages (2004) by arethuza on Thursday June 13, 2013 @11:31AM (#5874575)
But perhaps that is because nobody has developed a theory to explain why some notations are better than others!
Re:Great Works in Programming Languages (2004) by octo_t on Thursday June 13, 2013 @01:58PM (#5875509)
If you're interested, "Programming Language Syntax and Semantics" by D. A. Watt, and "Syntax of Programming Languages: Theory and Practice" by R. C. Backhouse is probably useful in answering some of those questions.

In reality, notation is in the eye of the beholder. Some people like brackets and braces to split up the flow, where as some prefer whitespace as delimiters. There are papers out there on this (which I can't find right now).

Re:Great Works in Programming Languages (2004) by shadowfox on Thursday June 13, 2013 @11:07AM (#5874426)
Just wanted to point out a couple of things:

> unusual prototypical inheritance

It was the language Self (as far as I know) that introduced prototype based programming. The initial definition of Self happened in the mid-80s if I remember right and there were a ton of papers formalizing various aspects of the language including theories for prototype inheritance.

Bib for Self: http://selflanguage.org/documentation/published/index.html

> notation

Must say that I don't consider notation as theoretically interesting. It is practically interesting obviously. (And things like anonymous functions have existed since Lisp)

> single-threaded asynchronous execution

There is an incredible amount of research in concurrency models. It is a little hard to point to a single source; but the theories of CSP and the actor model have been around for a long time and it has been incorporated in to various languages in more or less the Node JS style.

Don't get me wrong. Javascript has many interesting things to it practically. But the theory has been around for a long time.

Re:Great Works in Programming Languages (2004) by arethuza on Thursday June 13, 2013 @08:06AM (#5873574)
"Interesting" and even "practically useful" do not imply "theoretically interesting from an academic perspective".

Of course, the measure for academics is "can I get something published on the topic somewhere respectable" - it (mostly) doesn't have much to do with whether something is cool or useful.

Re:Great Works in Programming Languages (2004) by gems on Thursday June 13, 2013 @09:45PM (#5877841)
Do you have any idea what sort of things PL researchers study?