the programming language business [was Re: [FoRK] Apple, Apple,
Wed Dec 7 15:34:02 PST 2005
On 12/7/05, Kevin Elliott <k-elliott at wiu.edu> wrote:
> At 12:39 -0500 on 12/7/05, Luis Villa wrote:
> >To be fair, at the time AppleScript came on the scene there probably
> >wasn't a decent alternative. And it is totally possible that
> >Python/Ruby may have the same licensing issues that bite Apple on the
> >ass wrt Linux- I don't know how tightly applescript is tied into the
> >core OS, so I'm not sure of the details there.
> In the interest of education...
Great, I was hoping someone would answer the implied question there.
> AppleScript is bound very loosely to
> the OS. It's built on top of OSA (Open Scripting Architecture) which
> is a platform Apple created to allow multiple scripting language to
> coexist peacefully.
> Underneath OSA are AppleEvents which is basically a kind of
> interprocess communication layer apple created. Their used by the OS
> to communicate a variety of standard messages (i.e. Quit, Open File,
> etc.) as well as being expandable by individual applications (so an
> application can publish a list of events that in will perform on
> A number of OSA language bindings are available including Python:
> Speaking to AppleScripts longevity, I think it correctly serves a
> very specific niche better than any of the alternatives. In
> particular, it's a popular language in publishing world for
> automating workflows between commercial applications. In that spaces
> it's advantages are:
> 1) Very readable to a neophyte. A non-programmer can normally
> follow the general task that a script is doing even if he isn't very
> familiar with the the syntax. Let me be VERY clear that I do NOT
> consider this a virtue of a general purpose programming language.
> But, for the market segment in question it is a virtue.
Absolutely. Useful for QA automation as well, where QA folks writing
automated tests may not have programming backgrounds. FWIW, we're
doing that in GNOME now with a simple/clean python API, but I can see
the appeal of a special-purpose language here.
> 2) A clean mapping to the programming model OSA demands. OSA apps
> cannot treat applications like libraries (because their not). OSA
> was built to allow 3rd party applications to be cleanly scriptable
> without making to many demands about how that application architect
This is now a requirement for any modern toolkit for a11y reasons.
> 3) Large code base. In the defined space (scripting Mac
> applications), no other language has a larger code base. Inertia
Eh. Apple's inertia is overall fairly tiny compared to the momentum
behind python, perl, or anything MS produces.
> For the record, I have no problem with apple providing and supporting
> other OSA binding as co-equals to AppleScript. However, I think the
> idea that Apple out to throw out AppleScript in favor of Python (or
> anything else) is stupid and ignores why AppleScript was created and
> what it's advantages are.
Can't disagree, given the background here, and what I assume is a
fairly low maintenance cost at this point (they aren't doing much
active development of it right now, are they?)
More information about the FoRK