6 ms·
Repeat after me: "JVM is not Java." Clojure and Kotlin are the perfect proof of that. If you actually look closer, JVM is a pretty cool piece of technology. Too
by iLemming 6y ago
Repeat after me: "JVM is not Java." Clojure and Kotlin are the perfect proof of that. If you actually look closer, JVM is a pretty cool piece of technology. Too bad that it is doomed to be associated with Java forever.
- mehrdadn 6y agoThe performance characteristics are similar are they not?
- zucker42 6y agoIn the context of the original comment, aren't the performance characteristics of .NET pretty similar to the JVM (though I have no experience with the former)? I don't see big reasons why someone who likes C# would hate Kotlin. F# is pretty different from the available JVM languages though.
- mehrdadn 6y agoThe startup time of .NET is nothing like JVM's in my experience.
- wott 6y agoA .Net terminal "hello world" takes a good 2 or 3 seconds on my computer. Yay... :-/
- bosswipe 6y agoI would say that Scala on the JVM is comparable to F#.
- HappyDoge 6y agoOnly to an untrained eye. F# is a firmly rooted in ML language family history, only making concessions where necessary due to the fact it's running on the CLR. Scala is a random walk of language design space, with different ideas either working or ending up complete trainwrecks, and the fact it's missing this clean ML core makes it a painful language to pick up coming in from F# (or in fact most other statically typed FP languages).
- deleted 6y ago[deleted]
- smabie 6y agoI mean, considering that Scala has a much more powerful type system than F# and you can actually implement FP concepts like monads, functors, etc makes it arguably more FP than F#. While I haven't used F# much, as a professional OCaml and Scala dev, Scala is hands down the more powerful language. OCaml isn't bad, but it leaves a lot to be desired. A little offtopic, but if OCaml got rid of its module system, added type classes, polymorphic functions, higher-kinded types, multi-core support and removed objects (not that it matters that much), it would be my dream language. Basically, I want Haskell without the dogma. Though, I guess that's what unsafePerformIO provides!
- siwatanejo 6y agoWhy do you say you cannot implement monads and functors in F#? sorry but this is bullshit
- smabie 6y agoF# doesn't support higher-kinded types.
- wott 6y agoAnd the limitations too. If something (for example, unsigned numbers) is not provided by the JVM because it was declared useless for Java, most languages running over the JVM won't implement it either (and otherwise it would often mean resorting to a layer of more or less dirty and slow workarounds to circumvent the limitation).
- abimaelmartell 6y ago> Too bad that it is doomed to be associated with Java forever. Maybe because it's in the name ️
- untog 6y agoEh, I don't think JavaScript is really associated with Java these days.
- darkerside 6y agoTrue, but that took decades of reeducation. For a language that literally had no relationship to actual Java.
- rukuu001 6y agoAbsolutely - hard to believe that at the time Java was SO COOL that the name 'JavaScript' seemed like a really good idea.
- mandelbrotwurst 6y agoIt is and always will be at least among people who are unfamiliar with technology.
- abimaelmartell 6y agoIt was referring to the JVM
- ByteJockey 6y agoIt is a cool technology, but with the rise of docker (and related technologies), running things cross platform has less importance than it once did. I'm not saying it has zero importance, just less than the 90s/00s.
- XMPPwocky 6y agoIf Java had been able to provide it historically, "cross-platform sandboxed acceptable-to-high-performance execution of untrusted code" effectively describes WASM, which seems to be a fairly major emerging technology these days. Perhaps JVM bytecode is arguably just too complex for safe verification... (although JavaCard interpreters manage to do it for a restricted subset (with similar restrictions to WASM!) without too many problems)
- tombert 6y agoI should have clarified; they were moving mostly to Kotlin and Java. I don't have a problem with the JVM; virtually all my personal projects nowadays are in Clojure, and I actually gave a talk at Conj last year....so yeah, I'm a fan :).