Nice tidbits in Leopard

Posted by ben 10/16/2007

As many have blogged about, Apple has posted a rather hefty list describing all 300 new features of Leopard. Some specifics that really got the coder in me excited:

(Highlighting emphasis all mine)

Cocoa Bridges

Use Ruby and Python as first-class languages for building Cocoa applications, thanks to Objective-C bridges as well as full Xcode and Interface Builder support.

Scripting Bridge

Use Objective-C, Ruby, and Python programs to automate Mac applications. The new Scripting Bridge enables them to easily generate AppleEvents using a concise, AppleScript-like syntax.

Create Instruments with DTrace

Monitor system activity from high-level application behavior down to the operating system kernel, all thanks to the power of DTrace and the instrument builder.

DTrace

Monitor virtually any aspect of your application with DTrace, integrated into the Darwin kernel. Java, Ruby, Python, and Perl have also been extended to support DTrace, providing unprecedented access for monitoring the performance characteristics of those languages.


While some of the things can be done now (There’s PyObjC to use Python with Cocoa), the tighter integration of Python and Ruby into Leopard make it a very appealing upgrade (Even though I rather hate the new semi-transparent menubar and odd shelf nature of the Dock).

Comments
  1. Avatar
    Jon 10/17/2007 :

    The Python/Cocoa bit almost certainly IS just PyObjC, bundled with the system. Likewise for the Ruby equivalent.

  2. Avatar
    has 10/17/2007 :

    Jon is correct: Leopard uses PyObjC 2.0 and RubyCocoa (1.0?).

    BTW, PyObjC and RubyCocoa are both open source projects and already freely available for Tiger and can be easily embedded in application bundles for distribution, so you don’t need to wait for Leopard in order to use them. There’s also appscript for automating AppleScriptable applications from Python, Ruby and ObjC on Panther and later.

    The DTrace stuff sounds interesting, although it’s not clear from that page if the Java/Perl/Python/Ruby support is limited to the Apple-installed versions or if these extensions will be added to the standard distributions as well. Hopefully it’s the latter, but I guess we’ll find out soon enough anyhow.

  3. Avatar
    Ben Bangert 10/17/2007 :

    Awesome, gotta love how Apple claims its a feature of Leopard. :)

    Is the XCode and Interface Builder support it references from PyObjC as well? Or did they actually build something extra there?

  4. Avatar
    has 10/17/2007 :

    “Awesome, gotta love how Apple claims its a feature of Leopard. :)”

    To be fair to Apple, they have been helping with recent PyObjC and RubyCocoa development (e.g. one of project leaders for RubyCocoa is an Apple engineer), and it’s also great to see them giving their official blessings to these projects. It is a bit cheeky of Apple to fudge their pitch to sound as if Leopard is including completely new technologies that have never been available before though, but hey, that’s marketing for you.

    “Is the XCode and Interface Builder support it references from PyObjC as well? Or did they actually build something extra there?”

    I know Xcode 2 already supports Python syntax highlighting and PyObjC has included Xcode templates for a while now, but I would imagine the Xcode and PyObjC devs have been making improvements there too. Anyway, we’ll find out next week.

  5. Avatar
    tb 10/19/2007 :

    ... is Java 1.6 mentioned anywhere?

  6. Avatar
    Robert Hicks 10/19/2007 :

    I have “heard” that it will be 1.6…

  7. blog comments powered by Disqus