On Apr 23, 2013, at 12:38, Steven Degutis wrote:
> Currently Clojure exists on the JVM, the CLR, and the JSVM.
> 
> Why not put it on top of ObjC too?

+1

I'd be delighted to have such a port.  It could extend Clojure's span to
include OSX (including OpenStep) and iOS (in a somewhat diminished form).
See below for some information on related efforts in Ruby.

-r


While at Apple, Laurent Sansonetti developed MacRuby, a open-source port
of Ruby that uses LLVM and runs on OSX.  Like Clojure, MacRuby "embraces"
its platform (in this case, the Mac's OS, frameworks, and ObjC's runtime.
Conveniently, MacRuby also retains access to Rubyish resources (eg, Gems
and a wealth of Unixish commands, functions, and system calls).

I suspect that there is no really good way to map ObjC method names into
more conventional languages.  MacRuby uses a parameter hash for this, so
parts of ObjC method names become hash keys.

Unlike JRuby, MacRuby makes no strong effort to make its code look like
idiomatic Ruby.  However, the (related) HotCocoa project did some nifty
experimentation in this area.


> While this is certainly neat, it doesn't allow Clojure to be used as
> an embedded scripting language inside an ObjC app.


MacRuby doesn't run on iOS, either.  As I understand it, the main problem
is a lack of memory management.  However, I'd also expect some Unixish 
features to be missing.

So, Laurent has produced _another_ port of Ruby as a closed-source (though
inexpensive) effort.  I haven't played with it (http://www.rubymotion.com),
but I'd expect RubyMotion to be very solid.

Because RubyMotion is closed source, you can't simply inspect the way that
Laurent solves similar problems.  However, he gives talks regularly, chats
online, and may well be willing to explain how he solved specific issues.

Getting copies of MacRuby and/or RubyMotion might also be worthwhile as a
way to see how Laurent's decisions have worked out in practice.  It might
also push you in the direction of interoperability.  It's all good...

 -- 
http://www.cfcl.com/rdm            Rich Morin
http://www.cfcl.com/rdm/resume     r...@cfcl.com
http://www.cfcl.com/rdm/weblog     +1 650-873-7841

Software system design, development, and documentation


-- 
-- 
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/groups/opt_out.


Reply via email to