10 ms·
Nu: Lisp on Objective C. (think Clojure for Cocoa)
- c00p3r 16y agoI can't wait for the Arc on LLVM! It is more portable than JVM ^_^
- zephjc 16y agoI don't think the "clojure for cocoa" description is apt. 1. All the examples I saw on the git tutorials we're basically just imperative programming with parentheses instead of ObjC's brackets (actually some of the examples remind me more of Smalltalk). 2. Clojure seems to be finding a niche in the web app world, whereas Nu is targeted at Cocoa app programming, i.e. end-user GUI apps.
- deleted 16y ago[deleted]
- jared314 16y agoHas anyone tried to port Clojure to obj-c? They have one for .Net.
- sigh400 16y agoI think any real effort aside from the .Net one is waiting on Clojure-in-clojure to move forward.
- Scriptor 16y agoAny reason why it hasn't? What parts of the language are the biggest obstacles?
- sigh400 16y agoI can't speak of the biggest obstacles but Clojure was bound to the JVM pretty early (hence the j) -- I personally have no real interest in getting off the JVM so I have not followed it close at all. Bootstrapping would be the obvious answer though.
- hga 16y agoThere are no obstacles, rather there are several subtantial blocks of work to do, at least one of them non-urgent (rewriting the current Java compiler in Clojure).
- zephjc 16y agoI would disagree with the bit about Clojure being about web-apps though; it's really good for data processing and analysis, as well as enterprise apps (soon, I bet). Web-apps are just another fun way to hack with it. I'll concede that. What I meant is that, in general, Clojure is typically being used for things other than end-user GUI apps, i.e. server-side or data-related programming.
- deleted 16y ago[deleted]
- jashmenn 16y agoI'm the OP, and I'm not really sure what the source of let-down is here. Nu has closures, anonymous functions, supports currying etc. It uses the Cocoa classes and they claim it can even be compiled onto the iPhone. So while the examples in git may be "imperative" I would guess its only because they are trying to show how to be interoperable with Cocoa objects which, not being functional, causes imperative constructs to creep back into your code. The same thing happens when you try to use existing Java objects in Clojure. This seems to be a limitation only of the examples and not of the language itself.
- itistoday 16y agoLisp for Cocoa would have been a better title. Clojure is quite a different Lisp, and to say that this is "Clojure for Cocoa" implies it has something in common with Clojure other than also being a member of the Lisp family, which it really doesn't. Clojure is very functional, Nu is not. Clojure's language is designed to make it safe and simple to write multithreaded code. Nu is just an imperative Lisp with smalltalk syntax so that it can interface with Cocoa/Objective-C. Clojure takes a departure from all Lisps by treating lists as just any other datastructre, and therefore has literal syntax for arrays, hashtables, and sets, Nu has no such thing. Clojure places a huge emphasis on "data abstractions" like Seqs and builds its core functions around that. Clojure is compiled, Nu is interpreted, etc... Don't get me wrong, I think Nu is really cool, but I can't think of a single thing that Nu shares with Clojure that is exclusive to Clojure and not Lisp.
- jared314 16y agoBad title. From the Nu website: "Its syntax comes from Lisp, but Nu is semantically closer to Ruby than Lisp."
- stratospark 16y agoSo would be allowed on iOS given the 3.3.1 clause forbidding alternative languages?
- Elrac 16y agoThis is a question I'm very interested to hear an answer to. I've started dabbling with Objective-C and I don't like it much; it would be very sweet if I could write apps for the i{Pad,Phone,*} in a Lisp-like like language.
- protomyth 16y agoWell, the revised version doesn't fully forbid them. It would be interesting to see what you must go through to get Apple's approval. I would bet people using Lua are pretty well set due to its use in video games.
- mahmud 16y agoI was going to complain how I found neither compiler nor VM in that source listings, and how it's not a pure Lisp, yada yada yada. Then I took a look at the author's other projects to see if he was a Lisper .. Well, the man certainly puts his money where his mouth is. He has 40+ projects on github, the majority of them written in Nu. http://github.com/timburks http://github.com/timburks If it's good enough for him, and let's him get work done, who am I to complain.
- yuan 16y agoIf you're interested in Lisp, Objective C and Cocoa, you might also be interested in Clozure[1], a Common Lisp implementation which provides complete access to Cocoa through its Objective C bridge[2]. [1] http://ccl.clozure.com http://ccl.clozure.com [2] http://trac.clozure.com/ccl/wiki/Cocoa http://trac.clozure.com/ccl/wiki/Cocoa -- Auto suggestion machine at your service
- didtrade 16y ago<a href="http://www.didtrade.com/ http://www.didtrade.com/ target="_blank"> www.didtrade.com </a> Online sell fashion goods,Accept PayPal.cheap replica fashion goods for sale from china free shipping <a href="http://www.didtrade.com/Product.asp?BigClassName=Replica http://www.didtrade.com/Product.asp?BigClassName=Replica Handbags&SmallClassName=wholesale coach" target="_blank">Coach Handbag</a> <a href="http://www.didtrade.com/Product.asp?BigClassName=Replica http://www.didtrade.com/Product.asp?BigClassName=Replica Handbags&SmallClassName=Replica Chanel" target="_blank">Chanel Handbag</a> <a href="http://www.didtrade.com/Product.asp?BigClassName=Replica http://www.didtrade.com/Product.asp?BigClassName=Replica Handbags&SmallClassName=Replica LV" target="_blank">Louis Vitton Handbag</a> <a href="http://www.didtrade.com/Product.asp?BigClassName=Replica http://www.didtrade.com/Product.asp?BigClassName=Replica Handbags&SmallClassName=Replica Juicy" target="_blank">Juicy Handbag</a> <a href="http://www.didtrade.com/Product.asp?BigClassName=Replica http://www.didtrade.com/Product.asp?BigClassName=Replica Handbags&SmallClassName=Replica Burberry" target="_blank">Burberry Handbag</a> <a href="http://www.didtrade.com/Product.asp?BigClassName=Replica http://www.didtrade.com/Product.asp?BigClassName=Replica Handbags&SmallClassName=Replica Gucci" target="_blank">Gucci Handbag</a> <a href="http://www.didtrade.com/Product.asp?BigClassName=Replica http://www.didtrade.com/Product.asp?BigClassName=Replica Handbags&SmallClassName=Replica Prada" target="_blank">Prada Handbag</a> <a href="http://www.didtrade.com/Product.asp?BigClassName=Replica http://www.didtrade.com/Product.asp?BigClassName=Replica Handbags&SmallClassName=Replica DG Handbag" target="_blank">D&G Handbag</a> <a href="http://www.didtrade.com/Product.asp?BigClassName=Replica http://www.didtrade.com/Product.asp?BigClassName=Replica Handbags&SmallClassName=Jimmy Choo Handbag" target="_blank">Jimmy Choo Handbag</a> <a href="http://www.didtrade.com/Product.asp?BigClassName=Replica http://www.didtrade.com/Product.asp?BigClassName=Replica T-shirt&SmallClassName=Polo(men)" target="_blank">Polo T-shirt</a> <a href="http://www.didtrade.com/Product.asp?BigClassName=Replica http://www.didtrade.com/Product.asp?BigClassName=Replica T-shirt&SmallClassName=AF(men)" target="_blank">A&F T-shirt</a> <a href="http://www.didtrade.com/Product.asp?BigClassName=Replica http://www.didtrade.com/Product.asp?BigClassName=Replica Suit&SmallClassName=Fashion Suit" target="_blank">Fashion Suit</a> <a href="http://www.didtrade.com/Product.asp?BigClassName=Replica http://www.didtrade.com/Product.asp?BigClassName=Replica Jeans&SmallClassName=TrueReligion(men)" target="_blank">TrueReligion Jean</a> <a href="http://www.didtrade.com/Product.asp?BigClassName=Replica http://www.didtrade.com/Product.asp?BigClassName=Replica Jeans&SmallClassName=ED Hardy(men)" target="_blank">ED Hardy Jean</a> <a href="http://www.didtrade.com/Product.asp?BigClassName=Replica http://www.didtrade.com/Product.asp?BigClassName=Replica Belt&SmallClassName=Replica Belt" target="_blank">Leather belt</a> <a href="http://www.didtrade.com/Product.asp?BigClassName=Replica http://www.didtrade.com/Product.asp?BigClassName=Replica Jewelry&SmallClassName=Chanel Jewelry" target="_blank">Replica Jewelry</a> <a href="http://www.didtrade.com/Product.asp?BigClassName=Fashion http://www.didtrade.com/Product.asp?BigClassName=Fashion Shoes&SmallClassName=Brand Gucci Shoe" target="_blank">Casual shoes</a> <a href="http://www.didtrade.com/Product.asp?BigClassName=Replica http://www.didtrade.com/Product.asp?BigClassName=Replica Sunglass&SmallClassName=Oakley Sunglass" target="_blank">Sun glasses</a> <a href="http://www.didtrade.com/Product.asp?BigClassName=Replica http://www.didtrade.com/Product.asp?BigClassName=Replica Wallets&SmallClassName=LV" target="_blank">Replica Wallet</a> <a href="http://www.didtrade.com/Product.asp?BigClassName=Replica http://www.didtrade.com/Product.asp?BigClassName=Replica Perfume&SmallClassName=Brand Replica Perfume" target="_blank">Brand Perfume</a> <a href="http://www.didtrade.com/Product.asp?BigClassName=Replica http://www.didtrade.com/Product.asp?BigClassName=Replica Hats&SmallClassName=Wholesale Hat" target="_blank">Nice Hat</a>
- kunley 16y agoThe `nuke' name for the build tool is so cool!
- protomyth 16y agoTim Burk has really done some great work for Cocoa programmers and very informative to follow on twitter @timburks.