3 ms·
This basically looks like Kotlin, except it explicitly compiles down to Java. I'm not sure how I feel about this. Pre-Kotlin, I would have thought "hey, neat",
by Lewisham 15y ago
This basically looks like Kotlin, except it explicitly compiles down to Java.
I'm not sure how I feel about this. Pre-Kotlin, I would have thought "hey, neat", but now it seems like we're on the verge of a number of half-supported half-hearted attempts at being Java.next, each with their own pros and cons. I wish that IDEA and Eclipse could have worked together on this.
- Roybatty 15y agoEven though Kotlin is still essentially vaporware for those outside Jetbrains, we know that it'll have at least decent (if not great) IDE support right off the bat when the alpha/beta is released. I think that Kotlin could be the Java successor that Scala never will be.
- theshadow 15y agoPlease please please baby jesus let me have a dollar every time someone says 'Language X, not language Y is the java successor'
- Roybatty 15y agoThe difference is that we won't have an Emacs/Vim plugin for years and years after it's initial release. Plus, it's not a dynamically typed language and not Scala
- eropple 15y agoIIRC, JetBrains will also be providing an Eclipse plugin (though turning it over to the community after initial dev).
- squidsoup 15y agoIt's a pity everyone gets so worked up over trivial things like parens - Clojure is a beautiful language that absolutely deserves to be the next big language on the JVM. Yes, it offers a different programming paradigm from Java, but perhaps to make any genuine headway in the future we need a clean break from Object Orientation and it's muddled conflation of identity and state.
- hello_moto 15y agoAre you absolutely sure that Clojure can fit all problem domains? Clojure might be great for MapReduce type of programming. Does it fit a typical Accounting, CRM, Claim management (those kind of business-y app) software projects?
- moomin 15y agoActually, I really am sure Clojure will fit in all of those problem domains. Indeed, I'm pretty sure that if you experienced a well-written Clojure accounting app, you'd wonder why people bothered with Java.
- hello_moto 15y agoWould like to see the code if you have the example. Would be a very interesting case-study as to why Functional fits such problem domain as opposed to OOP because this would open a new perspective. Please share more. I'm interested. (Let me know if you can only share your experience via private channels).
- moomin 15y agoSadly, I can't share any code, but here's my basic observations: First, calling a standard Java object from Clojure is extremely painless. It's a bit more complex if you're dealing with listeners, but in general terms a java object is a java object without very much getting in the way. This means that all of your favourite GUI libraries are usable without modification. Second, as Carl pointed out, Clojure does have state, it's just tightly controlled. So tightly controlled that multi-threaded programming is much easier. There's some things that I'd like on top of what it does, but it's very powerful and useful. Thirdly, I'm not denying that thinking functionally takes a while, but as you develop the skill, it's amazing how many things actually look pretty stateless. I've met actuaries who use F# for all of their calculations. Equally, converting game state to a 3d scene graph is a pretty stateless process (although I've yet to meet anyone who's actually getting paid to do functional game programming). Hope that is interesting. Will be glad to share more.