Win a copy of Functional Reactive Programming this week in the Other Languages forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Productive and promising langauge out of the seven languages

 
Mohamed Sanaulla
Saloon Keeper
Posts: 3159
33
Google App Engine Java Ruby
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
We have seen scattered discussions about different languages. So which languages can we brand as productive- both in terms of developer productivity as well as the ease of use in application development and as promising language. By promising we can think of extent to which the language would be adopted by the developer community as well as by the enterprises for application development. We saw Java as the revolution language some 15 years back, so which is that language in the current set of languages.

We could consider the Seven languages chosen by Bruce or if anyone has another language to add- it would be most welcome.
 
Hussein Baghdadi
clojure forum advocate
Bartender
Posts: 3479
Clojure Mac Objective C
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Clojure has a lot of potential, Tim Bray called it the best Lisp ever created and Mr. Bruce Tate called it Lisp++.
Clojure is extremely productive and absolutely a promising language but given its Lisp legacy, it may not become Java.next
 
Hauke Ingmar Schmidt
Rancher
Posts: 436
2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
How do you want to measure productivity?
 
Mohamed Sanaulla
Saloon Keeper
Posts: 3159
33
Google App Engine Java Ruby
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hauke Ingmar Schmidt wrote:How do you want to measure productivity?


How easily the language can be adopted by the developers, learning curve
How productive the developer themselves become(might be because it teaches different paradigms which change the approach to tackle the problems),
Application development time using the language, verbosity of the code, different features of the code

That's what comes to my mind right away regarding productivity (though I had mentioned these points in my first post).

Actually productive and promising both go hand in hand.
 
Mohamed Sanaulla
Saloon Keeper
Posts: 3159
33
Google App Engine Java Ruby
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
John Todd wrote:Clojure has a lot of potential, Tim Bray called it the best Lisp ever created and Mr. Bruce Tate called it Lisp++.
Clojure is extremely productive and absolutely a promising language but given its Lisp legacy, it may not become Java.next

Lisp legacy? And any example where Clojure is being adopted? Does one need Lisp background for Clojure?
 
Hauke Ingmar Schmidt
Rancher
Posts: 436
2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Mohamed Sanaulla wrote:
Hauke Ingmar Schmidt wrote:How do you want to measure productivity?


How easily the language can be adopted by the developers, learning curve
How productive the developer themselves become(might be because it teaches different paradigms which change the approach to tackle the problems),
Application development time using the language, verbosity of the code, different features of the code

That's what comes to my mind right away regarding productivity (though I had mentioned these points in my first post).

Actually productive and promising both go hand in hand.


Thats WHAT you want to measure, but not HOW.

Still an interesting list, it shows your goal.

There are different approaches on how to measure programmer's productivity, but I didn't find a convincing one. The simplest one is LOC, which sometimes can be found when someone compares different programming languages ("Look, you can do this in language X in just three lines! Isn't this pure productivity!") but has a lot of serious flaws making it useless.
 
Hussein Baghdadi
clojure forum advocate
Bartender
Posts: 3479
Clojure Mac Objective C
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Mohamed Sanaulla wrote:
John Todd wrote:Clojure has a lot of potential, Tim Bray called it the best Lisp ever created and Mr. Bruce Tate called it Lisp++.
Clojure is extremely productive and absolutely a promising language but given its Lisp legacy, it may not become Java.next

Lisp legacy? And any example where Clojure is being adopted? Does one need Lisp background for Clojure?

Yes Lisp legacy since Clojure is a Lisp dialect.
AFAIK, Alex Pane is using Clojure for BankSimple project.
You don't have to have Lisp background, you can start learning Clojure from the scratch but I think (according my personal experiment) having Lisp background will massively boost your Clojure curve.
Clojure is my new hot girlfriend (Do you see that shining icon under my name?)
 
Mohamed Sanaulla
Saloon Keeper
Posts: 3159
33
Google App Engine Java Ruby
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hauke Ingmar Schmidt wrote:

Thats WHAT you want to measure, but not HOW.

Still an interesting list, it shows your goal.

There are different approaches on how to measure programmer's productivity, but I didn't find a convincing one. The simplest one is LOC, which sometimes can be found when someone compares different programming languages ("Look, you can do this in language X in just three lines! Isn't this pure productivity!") but has a lot of serious flaws making it useless.


I could go to an extent to specify WHAT but I really don't know HOW to measure :) LOC- Lines of Code? But yeah Lines of code/verbosity can often help the developer :wink: For example- if we compare Java and Scala in terms of the verbosity of code- Scala is more concise.
 
Mohamed Sanaulla
Saloon Keeper
Posts: 3159
33
Google App Engine Java Ruby
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
John Todd wrote:
Mohamed Sanaulla wrote:
John Todd wrote:Clojure has a lot of potential, Tim Bray called it the best Lisp ever created and Mr. Bruce Tate called it Lisp++.
Clojure is extremely productive and absolutely a promising language but given its Lisp legacy, it may not become Java.next

Lisp legacy? And any example where Clojure is being adopted? Does one need Lisp background for Clojure?


AFAIK, Alex Pane is using Clojure for BankSimple project.

Thanks for this tip. I would have a look. By the way- Alex Payne has also written a book on Scala
John Todd wrote:
You don't have to have Lisp background, you can start learning Clojure from the scratch but I think (according my personal experiment) having Lisp background will massively boost your Clojure curve.
Clojure is my new hot girlfriend (Do you see that shining icon under my name?)

Yeah I need to have a look at Clojure then Though I am currently looking into Scala and Haskell.

Any other languages?
 
Bruce Tate
Author
Ranch Hand
Posts: 71
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Mohamed Sanaulla wrote:We have seen scattered discussions about different languages. So which languages can we brand as productive- both in terms of developer productivity as well as the ease of use in application development and as promising language. By promising we can think of extent to which the language would be adopted by the developer community as well as by the enterprises for application development. We saw Java as the revolution language some 15 years back, so which is that language in the current set of languages.

We could consider the Seven languages chosen by Bruce or if anyone has another language to add- it would be most welcome.



Out of the seven in my book, for mature and highly productive, I would consider Ruby, Scala (for Java shops only), Erlang, Clojure, and possibly Haskell. I would have to have the right team to try any of them, but that's doubly so for Haskell. The learning curve is very, very tough. Each one of those languages has some pretty significant advantages for certain types of projects.

Other languages to consider are JavaScript for stuff beyond the browser, Go (the Google language), Python (again, with renewed support from people like Google and the University of Texas), Lisp, and some of the prototype languages like Lua. I occasionally hear cool stuff about other languages too like Oz, but it's still way too early for most of them.
 
Mohamed Sanaulla
Saloon Keeper
Posts: 3159
33
Google App Engine Java Ruby
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Bruce Tate wrote:
Other languages to consider are JavaScript for stuff beyond the browser, Go (the Google language),


JavaScript- I have never thought using them beyond browser? (this is may be my negligence towards JavaScript)

Go- I did try when it was announced- with commands like- 9z, 7z (or something similar?) I found it a bit totally different from the usual approach. But never really looked at it again. With Google's backing would surely progress a lot.
 
Bruce Tate
Author
Ranch Hand
Posts: 71
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Mohamed Sanaulla wrote:
Bruce Tate wrote:
Other languages to consider are JavaScript for stuff beyond the browser, Go (the Google language),


JavaScript- I have never thought using them beyond browser? (this is may be my negligence towards JavaScript)


Yeah. Believe it or not, a lot of the cool kids are doing some amazing things with JavaScript. The Prototype paradigm is very powerful, and there are plenty of functional concepts buit into JavaScript, and there are virtual machines everywhere.
 
Hussein Baghdadi
clojure forum advocate
Bartender
Posts: 3479
Clojure Mac Objective C
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Mohamed Sanaulla wrote:
Bruce Tate wrote:
Other languages to consider are JavaScript for stuff beyond the browser, Go (the Google language),


JavaScript- I have never thought using them beyond browser? (this is may be my negligence towards JavaScript)

Go- I did try when it was announced- with commands like- 9z, 7z (or something similar?) I found it a bit totally different from the usual approach. But never really looked at it again. With Google's backing would surely progress a lot.

Node.js is the hottest JavaScript project these days (It is not browser-based project).
You may want to check D programming language, I like it much more than Go language.
 
Mohamed Sanaulla
Saloon Keeper
Posts: 3159
33
Google App Engine Java Ruby
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
So here's my list of to learn: Scala, Haskell, Clojure, JavaScript.
 
Hauke Ingmar Schmidt
Rancher
Posts: 436
2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Mohamed Sanaulla wrote:I could go to an extent to specify WHAT but I really don't know HOW to measure :)


If you find a good answer on that you have an eternal place in literature for sure. ;-)

LOC- Lines of Code? But yeah Lines of code/verbosity can often help the developer :wink: For example- if we compare Java and Scala in terms of the verbosity of code- Scala is more concise.


As I wrote before, I don't think that shorter is better automatically, I don't think that typing speed is a limiting factor. Reading the more, but shorter code is not better suited for reading automatically. Otherwise one would only need the same functionality implemented in different languages to see which is more "productive". Obviously this does not work, there are many more factors. E.g. how should a "steep learning curve" be valued?
 
Bruce Tate
Author
Ranch Hand
Posts: 71
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hauke Ingmar Schmidt wrote:
Mohamed Sanaulla wrote:I could go to an extent to specify WHAT but I really don't know HOW to measure :)


If you find a good answer on that you have an eternal place in literature for sure. ;-)

LOC- Lines of Code? But yeah Lines of code/verbosity can often help the developer :wink: For example- if we compare Java and Scala in terms of the verbosity of code- Scala is more concise.


As I wrote before, I don't think that shorter is better automatically, I don't think that typing speed is a limiting factor. Reading the more, but shorter code is not better suited for reading automatically. Otherwise one would only need the same functionality implemented in different languages to see which is more "productive". Obviously this does not work, there are many more factors. E.g. how should a "steep learning curve" be valued?


True for sure. Perl is considered one of the most concise of the imperative languages, but it's also one of the least readable. What's the joke about the world's first write only language? Can't remember...
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic