Apple Previews New Script Editor
DrC writes "Apple has released a preview update to the venerable Script Editor, rewritten using Cocoa. It looks like an impressive upgrade." The preview release is included with the Dec 2002 Developer Tools as a separate install, too.
Why do we need a "replacement" for Perl? Why not let AppleScript do what it is good for and let Perl do the heavy lifting?
I'm a Unix -> OS X switcher, I can script in sh, awk, expect, etc. What advantages are there to learning AppleScript? Is the GUI integration anything like expectk?
For example, it's valid to say:
if you run this, it'll copy whatever you have selected in the Finder to ~/Foo
The downside is that you have to rely on the developer of the application you want to control to have created the proper hooks.
Oh, and another reason is that there are various applications with good AppleScript integration, notable the Finder. For example, you can create "Folder actions", which are scripts that are automatically executed when you open a folder, or drag something into it etc.
One more thing I should note is that the underlying system (OSA) is quite flexible. In particular, an applications "dictionary" (which contains a description of all objects reachable via IPC and their properties etc) is fairly language-agnostic. It's for example probably possible to write a perl OSA-plugin, which would allow the user to use the Script Editor to write an run perl scripts to control applications via AppleEvents. In fact, if the plugin has handlers for converting AEs to script, the user can "record" scripts. (the system intercepts AEs caused by manual user actions, and translates them into script. pretty cool)
So there's more to AppleScript than meets the eye. See also Inside Macintosh: InterApplication Communication and other AE/AS/OSA related docs.
AppleScript itself is being constantly updated, as you would know had you read the release notes for the latest OS upgrade. Meanwhile, perl is included with the operating system and there are two different perl-Aqua bridging technologies currently under development, one by Apple and another by an independent effort. And if you look further you will discover that you can call perl / shell scripts from AppleScript, and you can invoke AppleScript from perl / shell scripts. Thus you have the best of all worlds with Mac OS X.
As a general guideline, when you aren't aware of what's going on you should post questions, not statements.
-- thinkyhead software and media
AppleScript is very slow when it comes to processing massive amounts of data. But it's the only language for playing TradeWars, a telnet game that was originally a dialup BBS door game, with a macintosh client, TWScripter 3. I've written a 93 page (118,388 characters) AppleScript bot for playing TradeWars (not publically available yet-- the help documentation would probably be longer than the code itself). But I still think AppleScript is too slow.
At our school, we don't earn a degree when we graduate—we earn pi/180 radians
This is one among some other applescript goodies that have been announced. Interestingly, thye are releasing GUI interaction, something that was previously only available via third party tools like Prefab Player. Also, if you look in the new player, there is a setting for which language to use. Thus, there is the flexibility to use other languages (fronteir?).
Don't forget that you can put AppleScripts into shell scripts via the "open" command and vice versa you can call shell scripts from AppleScript by opening a terminal session for them, i.e., executing a .term file.
:) Click that white button and turn it green.
There's no need to bicker about scripting languages when they can call each other.
It's all good.
What the world needs is fewer karma whores and more good friends.
Go ahead, friend.
http://tinyurl.com/4ny52
Different purposes.
If you want to write in Perl, go ahead and write in Perl. Just install it with fink or whatever.
If you want to write in Applescript, write in Applescript.
IMO, most people would have a much harder time learning Perl than they would Applescript.
As for being limited, remember that it's a *scripting* language, not a programming language.
Note that the original script editor (for Mac OS Classic) supported multiple languages, including Javascript.
Posts like Parent suggest a a new /. mod type may be in order: "Uninformed".
OS X has PERL. If you want to write code to allow apps in OS X to interact with one another without passing large amounts of information, you use AppleScript. If you want to do a lot of textual heavy lifting, you use PERL. You want to write an application, you can use Objective C, Java, or use C with the Carbon libraries.
There's a good bit on Daring Fireball about GUI Scripting, a new feature of AppleScript that allows developers to control applications that do not have Applescript support. It's, um, weird.
// I will show you fear in a handful of jellybeans.
Cocoa apps have quite a few 'hooks' enabled by virtue of being Cocoa apps, don't they? Thought I'd read in Apple docs that this was a feature of developing your app in Cocoa v. Carbon ...
Cheers.
p.s. Can Java apps receive Apple Events?
Got to love how the Linux/Perl/GNU hippies can really prove their points with maturity and intelligence.
Damn, you are a truly sound defense for your obscure, slow solution (Perl).
About once a year I need to use a bit of Applescript for something, and once a year I again fall into a morass of tips-n-tricks articles, Web tutorials, popularized and out-of-date books, and a very complete Applescript manual from Apple whose existence is hard to discover and which is almost useless without good documentation on Finder scripting, which seemingly doesn't exist except for the Finder's Dictionary itself (which is about as complete as a typical .h file).
When HyperCard was introduced, it included a very decent tutorial and reference manual in stack form, and a good print manual was available from Apple.
AppleScript may not be the greatest thing since sliced bread but it is darned good.
Peace, Perl users. Relax, TCL users. No argument, REALbasic or VB fans. I'm not criticizing your favorite languages. I'm just saying AppleScript is darn good--and is beautifully integrated into the Mac OS. Not everyone wants or needs a Mac-OS-oriented scripting language, but there IS one, and it's lovely.
Why, oh why hasn't Apple produced a good set of AppleScript books--comparable to, say, those REALsoftware has for REALbasic? Why doesn't it try to SELL them as a checkoff option on their build-to-order menu?
It's great that it wasn't lost (along with so much else good System 7.5 technology). It's great that they recoded it native. It's great that it's in OS X. But it is still a hidden treasure.
Right now, about 0.001% of all Apple users know and use AppleScript. It should be more like 1%.
"How to Do Nothing," kids activities, back in print!