2 Replies - 13353 Views - Last Post: 22 May 2011 - 07:31 AM

#1 modi123_1  Icon User is offline

  • Suitor #2
  • member icon

Reputation: 11617
  • View blog
  • Posts: 45,793
  • Joined: 12-June 08

Java killer?

Posted 13 April 2011 - 07:27 AM

I came across this in my morning news. It sounds interesting - any thoughts from the Java heads? Would you be willing to hang up the java hat and move to Ceylon?



Gavin King of Red Hat/Hibernate/Seam fame recently unveiled the top secret project that he has been working on over the past two years, a new language and SDK designed to replace Java in the enterprise.


the Ceylon Project aims to create a programming language and SDK for business computing, designed with an eye to the successes and failures of the Java. It is built to run on the JVM, uses static typing, and supports high-order functions, while maintaining a strong focus on being easy learn and easy to read.


What I like

1. The overall vision: learn from Java's mistakes, keep the good, ditch the bad
2. The focus on readability and ease of learning/use
3. Static Typing (find errors at compile time, not run time)
4. No “special” types, everything is an object
5. Named and Optional parameters (C# 4.0)
6. Nullable types (C# 2.0)
7. No need for explicit getter/setters until you are ready for them (C# 3.0)
8. Type inference via the "local" keyword (C# 3.0 "var")
9. Sequences (arrays) and their accompanying syntactic sugariness (C# 3.0)
10. Straight-forward implementation of higher-order functions

Things that may grow on me

1. The new assignment operator ":="
2. The new string interpolation syntax
3. The new types: Natural, Numeric, etc
4. Classes, Methods and Attributes looking almost identical...can't decide if that is good or bad

Things that make me go hmmm

1. All the new keywords for existing concepts: shared, satisfies, assign, variable, local
2. The simplification of the public/protected/private access/visibility levels
3. The Smalltalk-like syntax for inline functions as parameters

Things I didn't fully get

1. The Closure and block structure examples had some things that were a little puzzling. e.g. the "name" attribute of type "Name" returns "Name(“Gavin”, “King”)"
2. Some of the more intricate details of the type system..

Is This A Good Question/Topic? 2
  • +

Replies To: Java killer?

#2 xclite  Icon User is offline

  • I wrote you an code
  • member icon

Reputation: 1127
  • View blog
  • Posts: 3,762
  • Joined: 12-May 09

Re: Java killer?

Posted 13 April 2011 - 10:09 AM

The reasons he gives for wanting to develop it are similar to those I gave for forgetting Java after college.

Optional arguments are nice. His guard for avoiding nullpointers seems about as effective as tossing in
if (arg != null)

unless the compiler actually enforces that you have an exists check.

He likes his syntactic sugar - which definitely has a place. I don't really know if it's worth the effort moving to a new system if he doesn't make things like concurrency easier, though.

Edit: Also, I think Scala does a lot to combat the issues this guy has with Java, although I'm no subject expert.

This post has been edited by xclite: 13 April 2011 - 10:13 AM

Was This Post Helpful? 0
  • +
  • -

#3 v0rtex  Icon User is offline

  • Caffeine: db "Never Enough!"
  • member icon

Reputation: 223
  • View blog
  • Posts: 773
  • Joined: 02-June 10

Re: Java killer?

Posted 22 May 2011 - 07:31 AM

I really dislike the way King is attempting to simplify the language, There are several key concepts to Java that he is utterly changing (Such as the new assignment operator, new keywords - keyword for variable really?). I also dislike the way he is simplifying the access levels of things such as public, place etc... Also tbh I think that no method overloading could be a little annoying however despite all this if the language could bring the Java Developers of multiple platforms together onto one platform. imho I think that it could work but would take a bit of getting used to :)
Was This Post Helpful? 0
  • +
  • -

Page 1 of 1