Win a copy of Re-engineering Legacy Software this week in the Refactoring forum
or Docker in Action in the Cloud/Virtualization forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Building languages for the virtual machines

 
Hussein Baghdadi
clojure forum advocate
Bartender
Posts: 3479
Clojure Mac Objective C
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Mr. Bruce,
It is the trend these days to build languages for other platforms (CLR and JVM but JVM mainly).
JVM enjoys dosens of them: Clojure, Scala, Erjang, kawa, Mirah and the list is pretty big.
Do you think it is a good idea to build languages for JVM?
Do you think some of these languages will reach success and hit the mainstream or they are experimental and a proof of concept?
Thanks.
 
Bruce Tate
Author
Ranch Hand
Posts: 71
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
John Todd wrote:Hi Mr. Bruce,
It is the trend these days to build languages for other platforms (CLR and JVM but JVM mainly).
JVM enjoys dosens of them: Clojure, Scala, Erjang, kawa, Mirah and the list is pretty big.
Do you think it is a good idea to build languages for JVM?
Do you think some of these languages will reach success and hit the mainstream or they are experimental and a proof of concept?
Thanks.


It really depends on the language. The JVM comes with some excellent advantages, like a wide user base, reliability, and good performance. But there's also some baggage when it comes to languages. For example, Ruby was hard to implement because some of the abstractions don't line up very neatly (though Charles Nutter and Thomas Enebo have done an excellent job of smashing through barriers to make this work). Erlang didn't have enough primitives to make all of the reliability work like you'd want, and there's no tail recursion optimization for functional languages.

So I'll give you the cop-out answer and say,

It depends.

Thanks for your question.
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic