Archive for March 26, 2009

Thursday, March 26, 2009

Introducing JSTalk

Gus Mueller:

You write your scripts in JavaScript, and application communication is handled via Cocoa’s distributed objects. Like PyObjc and RubyCocoa, JSTalk uses a bridge to talk to Cocoa (JSCocoa + WebKit’s JavaScriptCore), so you get all the power and speed that comes with it. JSTalk comes with a little editor, a command line tool, and an automator action. If an application you want to script isn’t exposed via JSTalk, you can still tell it what to do via the Cocoa Script Bridge (which is new to 10.5).

First of all, this is very cool. However, I think defining the object model, e.g. using XML, is a feature. Otherwise there’s no separation between the scripting interface and the application’s unstable internal interfaces. Secondly, most of my scripts need to run on other Macs, which don’t have anything special installed. Hopefully, Apple will take a look at JSTalk along with Appscript and JavaScript OSA, come up with something modern and cool, and build it into the OS.

Unladen Swallow

Unladen Swallow is a branch of Python 2.6.1 that aims to be 5x faster than CPython (via Jesse Noller):

The majority of our work will focus on speeding the execution of Python code, while spending comparatively little time on the Python runtime library. Our long-term proposal is to replace CPython’s custom virtual machine with a JIT built on top of LLVM, while leaving the rest of the Python runtime relatively intact. We have observed that Python applications spend a large portion of their time in the main eval loop. In particular, even relatively minor changes to VM components such as opcode dispatch have a significant effect on Python application performance. We believe that compiling Python to machine code via LLVM’s JIT engine will deliver large performance benefits.

Great name.

MacHeist and the Market as a Whole

Lukas Mathis:

Rather than arguing about whether MacHeist is good for the participating developers, or whether it’s good for the MacHeist customers, or whether it’s a nice experience, or whether the participating developers are getting great marketing, I would be interested in knowing how it affects the Mac shareware market as a whole.

What influence does Espresso being in the bundle have on Coda? Does the fact that a hundred thousand people will effectively get a free copy of Espresso hurt Coda? Does it negatively impact the amount of money people are willing to pay for an app like Coda or Espresso or BBEdit or TextMate?

It’s not an easy question to answer, but I think it’s what matters in the end. MacHeist could either be growing the market for Mac software or creating a tragedy of the commons.