• Post Reply Bookmark Topic Watch Topic
  • New Topic

multi paradigm Java  RSS feed

 
Ranch Hand
Posts: 45
  • Mark post as helpful
  • send pies
  • 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: 42972
73
  • Mark post as helpful
  • send pies
  • 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
  • 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
  • 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: 10575
66
Eclipse IDE Hibernate Ubuntu
  • Mark post as helpful
  • send pies
  • 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: 42972
73
  • Mark post as helpful
  • send pies
  • 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
  • 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: 42972
73
  • Mark post as helpful
  • send pies
  • 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.
 
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!