Hacker News new | ask | show | jobs
by Gurkenmaster 4152 days ago
I don't like the class syntax in either ES6 or CoffeeScript.

In my opinion Ceylon nailed it:

    class Person(variable String firstName, variable String lastName) {

        shared String name => firstName + " " + lastName;
    
        assign name {
            value names = name.split().sequence();
            firstName = names[0] else "";
            lastName = names[1] else "";
        }
    }

Classes are effectively just closures with subtyping that export their shared members/functions.

Unrelated: A simple class like that shouldn't be mutable.