Re:Kotlin M7
by Avshalom on Thursday March 20, 2014 @10:35AM
(#7435739)
I think that trophy is won pretty handily by Go.
[ Parent
| on HN ]
I wanted to say Go as well, but compared to any other possibly-mainstream languages, Go is very innovative - it has fibres/goroutines, channels, and structural typing/lack of class-based inheritance!
The bar for what counts as "innovation" in mainstream languages is strikingly low.
Re:Kotlin M7
by thescrewdriver on Thursday March 20, 2014 @12:45PM
(#7436747)
All of which are available in other languages...
In addition to the fact that none of it's features are particularly novel lets remember that Go's founding ambition was "compile faster than C++"
And people disparage them for it, which is nuts. Google had a problem that they determined could best be solved by creating Go. So they did it, and presumably, they've solved their problem. That seems like a perfectly good use of incremental improvement.
Which raises an interesting point: what to people on the outside looks like a paradoxical combination of insane hubris and deep technical conservatism is probably simply what to Google's eyes looks like steady-state, responsible technical problem-solving -- c.f., hhvm and Facebook for a similar approach.
> Go's founding ambition was "compile faster than C++"
And Kotlin's is "compile faster than Scala"!
Actually, Go's fairly successful melding of static typing and duck-typed interfaces was a useful new trick. (Which doesn't completely excuse the "C++ tried that and it didn't work for them so WE WON'T" foot-dragging on other matters...)
>Go's fairly successful melding of static typing and duck-typed interfaces was a useful new trick
For those that don't know this feature is called structural typing: http://en.wikipedia.org/wiki/Structural_type_system
Also, OCaml uses structural typing too.
No it was not, there are lots of languages that offer similar capabilities.
The fact that mainstream developers don't know it, does not make it something that Go designers invented.
OCaml already had structural typing. Scala does too.