That sounds like a great project. And I know that in the medium to long term, even if Clojure continues to support Java 1.6, eventually Apple will stop supporting their legacy VM, so I just hope Afterglow will catch on enough by then to convince Cycling ’74 to update their MXJ bridge. ;^)
-James > On Aug 8, 2015, at 13:03, Andrew Oberstar <ajobers...@gmail.com> wrote: > > I may end up in the same incomplete, unmaintained state as the other > libraries you've seen, but I'm slowly starting on a Java interop library > "cljj" (https://github.com/ike-tools/ike.cljj > <https://github.com/ike-tools/ike.cljj>). > > - AutoCloseable - As James (Reeves) mentioned, clojure.core/with-open meets > this need. > - NIO2 - Standard Java interop is functional, but can be a pain due to the > heavy use of varargs in NIO2 APIs. I'd like to wrap this in cljj. > - Streams - Can add reduce/transduce support by implementing CollReduce > protocol. There's not a clean way to support the clojure.core/seq function, > that I've seen without wrapping the stream. I plan to support this in cljj. > - Lambdas - I do find these to be a pain, and had a thread on this list a > week or two ago. Right now I'm planning to just have functions/macros to > wrap/define methods implementing java.util.function interfaces. Ideally, the > compiler would support this better. This is the only one that really would > require any change to Clojure itself for better Java 8 support IMO. > > I can understand James' (Elliott) desire to keep Java 6 compatibility for > platforms that are slower to adopt newer JVMs, but I hope that doesn't become > an excuse for Clojure to stay moored to the JVM's past for the long-term. > > Andrew Oberstar > > On Fri, Aug 7, 2015 at 7:12 AM Morten Christensen <m...@41concepts.com > <mailto:m...@41concepts.com>> wrote: > I am new to Clojure which I am evaluating using Clojure for a Java 8 based > framework with code in clojure, java and possibly other jvm based languages > that all need to interoperate. > > Clojure has many smart features which I like but there is at least one > drawback. I could be wrong (?) but it appears to me that feature-wise it is > limited to a legacy version of java - Java version 6 from 2008. > > Happily Clojure tolerate running under Java 7/8 but I have found no specific > support for Java 7/8 features. In particular there is no support for NIO 2.0 > or interoperability support for @FunctionalInterface, > java.lang.AutoCloseable, Method parameter reflection, java.util.stream etc. > > I could do my own Clojure wrapper for NIO 2 but it seems to be quite hard for > that particular tech (other people in the community have tried without being > 100% complete and could not find anything that is actively maintained). All > the other stuff seems like something that need in Clojure itself along with > invokedynamic and other optimizations. > > Is there any plans for actively supporting Java 7/8 ? > > /Morten > > > -- > 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 > <mailto: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 > <mailto:clojure%2bunsubscr...@googlegroups.com> > For more options, visit this group at > http://groups.google.com/group/clojure?hl=en > <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 > <mailto:clojure+unsubscr...@googlegroups.com>. > For more options, visit https://groups.google.com/d/optout > <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 > <http://groups.google.com/group/clojure?hl=en> > --- > You received this message because you are subscribed to a topic in the Google > Groups "Clojure" group. > To unsubscribe from this topic, visit > https://groups.google.com/d/topic/clojure/PjK0kYP1nCs/unsubscribe > <https://groups.google.com/d/topic/clojure/PjK0kYP1nCs/unsubscribe>. > To unsubscribe from this group and all its topics, send an email to > clojure+unsubscr...@googlegroups.com > <mailto:clojure+unsubscr...@googlegroups.com>. > For more options, visit https://groups.google.com/d/optout > <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.