> > I have longed for a statically compiled language with type inference with >> the simplicity and consistency of Clojure's syntax that also supports >> generative testing and works on the JVM but alas, I have not found one. >> Frege and PureScript both look interesting but I am unsure of Frege's >> longevity and PureScript's performance on the JVM's Javascript >> environment. > > > Note that both of those options both suffer from very difficult interop - > PureScript will probably not have any at all since it will be expecting to > interop with JS, and Frege has some but it's clunky due to the type system > mismatch. > > Personally I long for a Kotlin/Clojure hybrid, to the point that I have > seriously considered trying to build one. >
ShenLanguage <http://shenlanguage.org/> is maybe the closest thing from a fully typed Clojure on the JVM, though it also suffers from poor interop. I'd like to suggest Fantom <http://fantom.org/>. I wish more people used it. It is a functional/oop, actor concurrent, inference typed, static with optional dynamic typing language with good interop that runs on top of the JVM, CLR and JavaScript. It has a lot of similarities with Clojure, like a strong support for data literals such as for maps and lists, looping is mostly done through higher order functions, it has a subset of its own language as a data declaration format, immutable by default, strong concurrency support using actors model, etc. It just needs some love. I find at its core, its got a better offering than Kotlin. On Friday, 7 April 2017 20:34:34 UTC-7, Colin Fleming wrote: > > I have longed for a statically compiled language with type inference with >> the simplicity and consistency of Clojure's syntax that also supports >> generative testing and works on the JVM but alas, I have not found one. >> Frege and PureScript both look interesting but I am unsure of Frege's >> longevity and PureScript's performance on the JVM's Javascript >> environment. > > > Note that both of those options both suffer from very difficult interop - > PureScript will probably not have any at all since it will be expecting to > interop with JS, and Frege has some but it's clunky due to the type system > mismatch. > > Personally I long for a Kotlin/Clojure hybrid, to the point that I have > seriously considered trying to build one. > > On 8 April 2017 at 14:57, Didier <did...@gmail.com <javascript:>> wrote: > >> | I think you missed my point, which is only "Spec is great as we have >> the power of Clojure" - sure, just don't forget you have the power of >> ANOther language in that language as well. >> >> Hum, I've probably missed your point sorry, I'm still not following. >> >> | no, this will, or at least should, be caught. 10/0 is not an int, and >> typed "/' would reject 0 as an ill-typed denominator. >> >> In most static type systems this will not be caught, because they don't >> have a fraction type. So this is actually a function that takes two number >> types, and 0 is a number too, so it will type check, but throw an exception >> at runtime. >> >> -- >> You received this message because you are subscribed to the Google >> Groups "Clojure" group. >> To post to this group, send email to clo...@googlegroups.com >> <javascript:> >> Note that posts from new members are moderated - please be patient with >> your first post. >> To unsubscribe from this group, send email to >> clojure+u...@googlegroups.com <javascript:> >> For more options, visit this group at >> http://groups.google.com/group/clojure?hl=en >> --- >> You received this message because you are subscribed to the Google Groups >> "Clojure" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to clojure+u...@googlegroups.com <javascript:>. >> For more options, visit https://groups.google.com/d/optout. >> > > -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.