Filed under: How-tos, Developer
Apple Tutorial: Developing with MacRuby
What this means is that applications written with MacRuby can be a full-fledged Cocoa application with all the advantages that entails. The tutorial will take you through the process of installing MacRuby as well as building a sample application with Xcode. So if you've ever wanted to get started thinking about developing for the Mac, but have always been intimidated by Objective-C (which pretty much describes me), playing around with MacRuby might be just the ticket to get you started.
[via MacVolPlace]

![TUAW [Cafepress]](http://www.blogsmithmedia.com/www.tuaw.com/media/tuaw-cafepress-promo.png)


Reader Comments (Page 1 of 1)
nogg3r5 said 8:08AM on 10-22-2008
Minor typo...
"ported to run directly on top of Mac OS X core technologies such as the Objective-C common runtime and garbage collector, and the CoreFoundation framework.ported to run directly on top of Mac OS X core technologies such as the Objective-C common runtime and garbage collector, and the CoreFoundation framework."
Someone hit Command V twice!
Reply
Mat Lu said 10:48AM on 10-22-2008
Oops! Fixed.
koreyel said 9:16AM on 10-22-2008
What the world really wants is MacRuby for the iphone....
Reply
oZ said 10:26AM on 10-22-2008
Yes, let's put the slowest interpreted language for the platform on a low power device. :P
Pascal Rules said 10:24AM on 10-22-2008
This is still incredibly convoluted compared to RealBasic. I wish Embarcadero would port Delphi to Mac OS X.
Reply
Graham said 1:15AM on 10-23-2008
Delphi isn't a patch on actual Cocoa/Objective-C. I know Delphi programmers who swear by it, but Cocoa permits things Delphi programmers only dream about, thanks to its late binding.
What I can't understand is why people think Obj-C is hard; it isn't. The syntax takes a little getting used to (say, about five minutes) and the API is admittedly huge, but the power it has is well worth the effort. I don't think I could go back to any other language that is statically bound.
I'm not clear what the point of things like MacRuby is - good as Ruby is, why not just cut to the chase and learn Obj-C. It's really not hard!
Furies said 3:43PM on 10-22-2008
What is the difference between this and RubyCocoa, the Objective-C Ruby port implemented in Leopard as of its release? As far as I know they do most of the same stuff, perhaps give or take a few differences? Could someone enlighten me?
Reply
Marcos said 3:46PM on 10-22-2008
From the article:
RubyCocoa is implemented as a bridge between the Objective-C runtime and the official Ruby interpreter. Because of this, the bridge must be crossed every time you talk to an Objective-C object from Ruby, and vice-versa. All objects must be converted from one typing system to another and messages must be forwarded, the cost for which can be prohibitive if done too often.
The goal of the MacRuby project is to address these and a number of other challenges by providing an implementation of the Ruby language on top of core Mac OS X technologies such as Objective-C runtime, the generational garbage collector, and CoreFoundation.
In MacRuby, all classes are Objective-C classes, all methods are Objective-C methods and all objects are Objective-C objects. In essence, the bridge disappears. Ruby is implemented directly on top of the Objective-C runtime.
lakiolen said 3:52PM on 10-22-2008
I went through that tutorial last night. Definitely still need to know Cocoa APIs if you want to get stuff done. But you don't have to learn Objective-C.
Reply