I wouldn't pass judgement on Swift too soon. Eval works just fine in the REPL and it appears the language supports hot code loads out of the box. Swift also has real support for final fields via 'let'. I personally think a ClojureSwift could be quite interesting :)
On Wednesday, June 4, 2014, Timothy Baldridge <tbaldri...@gmail.com> wrote: > I'm starting to feel like a broken record, but here we go. > > Some things to think about: > > 1) Why do you want this? The JVM GC and JIT are some of the fastest (if > not the fastest) on the planet, so performance will never be a good reason > to do this. > 2) Do you want something like eval? As far as I can tell Swift is > statically compiled. Only XCode has the ability to modify a program on the > fly. > 3) Clojure is highly polymorphic and dynamically typed. Walk the source > code for first and next and you'll find something like 3-4 polymorphic > calls involved in something as simple as (doseq [x (range 100)]), per item. > 4) I have yet to see performance numbers for Swift....how fast/slow is it > compared to other languages? > > To put this all into perspective, I once translated LazySeq to C++ and ran > some code (with a GC) that performed something like (doall (range 100000)). > The result was about 10x slower than Clojure on the JVM. So simply running > something in C++/LLVM doesn't mean that you'll even get close to the > performance of the JVM. > > Memory constrained systems might benefit from a LLVM Clojure. In addition > there's room for improvement with the JVM's horrible warmup times. Python > will boot instantly on most systems while the Clojure REPL takes about a > minute to boot on the RPi. But aside form that, I can't see much of a > point. > > If you want something like this there's always ( > https://github.com/galdolber/clojure-objc) > > Timothy > > > > > On Wed, Jun 4, 2014 at 7:20 AM, Greg Knapp <virtual.g...@gmail.com > <javascript:_e(%7B%7D,'cvml','virtual.g...@gmail.com');>> wrote: > >> The recent release of Swift made me revisit Clojure on LLVM. This post >> from 2010 >> <https://groups.google.com/d/msg/clojure/KrwtTsdYZ8I/Qf8PSMeoZCUJ> >> suggests it's a very difficult task. >> >> Swift would make this job easier? As with ClojureScript, generate Swift >> code / provide interop and Clojurian's can produce native iOS apps? >> >> Perhaps the biggest hole to be filled would be tooling (Xcode is not >> Clojure/Lisp friendly? i.e. no playground support) >> >> -- >> 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 >> <javascript:_e(%7B%7D,'cvml','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 >> <javascript:_e(%7B%7D,'cvml','clojure%2bunsubscr...@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 >> <javascript:_e(%7B%7D,'cvml','clojure%2bunsubscr...@googlegroups.com');>. >> For more options, visit https://groups.google.com/d/optout. >> > > > > -- > “One of the main causes of the fall of the Roman Empire was that–lacking > zero–they had no way to indicate successful termination of their C > programs.” > (Robert Firth) > > -- > 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 > <javascript:_e(%7B%7D,'cvml','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 > <javascript:_e(%7B%7D,'cvml','clojure%2bunsubscr...@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 > <javascript:_e(%7B%7D,'cvml','clojure%2bunsubscr...@googlegroups.com');>. > 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.