• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

multi paradigm Java

 
Ranch Hand
Posts: 45
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
With the relative success of Scala implementing functional design and Oracle putting effort into updating java will we see Java adopt a multi paradigm approach which will allow developers to choose which approach they favor?

 
Rancher
Posts: 43081
77
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I don't see Oracle putting many functional elements into Java. Given that highly capable JVM languages like Scala, Clojure, Haskell, Scheme/Kawa etc. are already out there, I don't think there's a lot to be gained beyond what's already available.
 
Sayth renshaw
Ranch Hand
Posts: 45
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I would assume that Oracle wants people to think Java as the go to language.

If people choose Scala or Clojure or Kawa, while it highlights the JVM it minimises traffic to Java.

Oracle could use these other implementations as references to what's possible to keep Java at #1.
 
Rancher
Posts: 436
2
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Ulf Dittmer wrote:I don't see Oracle putting many functional elements into Java.



Are the Java 8 additions for you too minor or not functional?

Let me quote from Richard Warburton, "Java 8 Lambdas":

Richard Warburton wrote:For many people, what Java 8 offers by way of functional programming is incredibly limited: no monads,[1] no language-level lazy evaluation, no additional support for immutability. As pragmatic programmers, this is fine; what we want is the ability to write library-level abstractions so we can write simple, clean code that solves business problems.

 
Bartender
Posts: 10780
71
Hibernate Eclipse IDE Ubuntu
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Sayth renshaw wrote:Oracle could use these other implementations as references to what's possible to keep Java at #1.


Possibly, but I suspect at the risk of losing their primary audience, who might instead migrate to C# or some other "C-style" language. Some would argue that even recent things like lambdas and closures aren't really "Java" any more.

Have you ever programmed a functional language? It's not simple if you've come from a basically procedural one like Java, and requires a major change in the way you design and look at things.

Don't get me wrong, I like the functional approach; I'm just not sure I could "change my stripes" at this point in my career. It took me long enough to get to my "Eureka" moment with OO.

Winston
 
Ulf Dittmer
Rancher
Posts: 43081
77
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Hauke Ingmar Schmidt wrote:Are the Java 8 additions for you too minor or not functional?


I didn't say Java had no functional elements, I said that I don't think many (more) will be added.

As to the other quote, that may be what that guy (or whoever he means by "we") wants - it doesn't mean that it's going to happen. As I said, there's no shortage of fine functional language implementations available for the JVM. If Java is not sufficiently functional for someone's taste, choices abound, but I think it would be a mistake to add everything people want to a language.
 
Hauke Ingmar Schmidt
Rancher
Posts: 436
2
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Ulf Dittmer wrote:

Hauke Ingmar Schmidt wrote:Are the Java 8 additions for you too minor or not functional?


I didn't say Java had no functional elements, I said that I don't think many (more) will be added.



For me the additions of Java 8 are a sign that Oracle is willing to do so if needed or if a need is perceived (and that is what I wanted to express).

Ulf Dittmer wrote:but I think it would be a mistake to add everything people want to a language.



I fully agree. ("How cool would it be to have MySQL access without configuration? Let's add mysql_connect on language level."). There were reasons why certain possible capabilities were left out of Java deliberately. Probably we see the next language in a few years that reduces complexity and features and leaves only one way to do things to get most of developers productive (instead of satisfying a few from the top) - certainly with different focus in certain areas to adopt to shifting technology, development paradigms and preferences, and experience gained. And even now I can hear some people from the future cry how limited that language is, how certain features need to be included, and why that makes it a toy language only that never will gain traction. Or is that an echo of '95?
 
Ulf Dittmer
Rancher
Posts: 43081
77
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Yep, as long as there are languages, some people will be dissatisfied with them and invent new ones. The cool thing nowadays is that a lot of these efforts are built on top of the JVM, so you have access to the JRE class libraries, and possibly high-level interactions between languages running in the same process. Anyone interested in this space should find Guy Steele's talk on Growing a language interesting.
 
Don't get me started about those stupid light bulbs.
reply
    Bookmark Topic Watch Topic
  • New Topic