TweetFollow Us on Twitter

December 96 - According to Script: Vocabulary Advice

According to Script:
Vocabulary Advice

Cal Simone

One of the beautiful things about AppleScript is that it allows you to do nearly anything you want in your vocabulary; however, just because it allows something doesn't mean that you should do it. To help guide you, I'll regularly include miscellaneous pieces of vocabulary advice in this column. This time I'll address words to avoid in your vocabulary. Here are a few examples:

  • Avoid using object as the name of a class. If you must implement an abstract object class, use base class.

  • Avoid using the word of in your terms. It tends to be confusing, since it's used between parts of an object specification. It may not always possible to avoid this, but think carefully before doing it.

  • Avoid using end as the first word of a verb name.
Let's look more closely at the problem with using end. Keep in mind that users are accustomed to seeing end at the end of a block, and AppleScript automatically appends the word tell, repeat, if, or the name of the handler after the word end if the user types end on a line by itself. For example:
if the moon is blue
...
end [if] -- AppleScript fills in the "if"
If you use end as part of a verb name in your vocabulary, such as end animation, users will type the word end by itself and expect AppleScript to fill it in. Of course, this won't happen for a dictionary-defined command like end animation, which isn't a true block construct, so it will appear that the AppleScript compiler is behaving arbitrarily.
begin animation
...
end -- AppleScript doesn't fill in "animation"
This confusion already exists in the case of the Database suite event End Transaction. In dictionaries of applications that support transactions, users find themselves having to remove the word transaction in the phrase end transaction whenever they recompile a script. Don't create this confusion in your vocabulary -- it's better to use verb names like start animation and stop animation. Users will assume that the full verb name is required.
start animation
...
stop animation

CAL SIMONE (mainevent@his.com) plans to include this advice in one of his future According to Script columns in develop. We're putting it on the CD and develop's Web site so you won't have to wait for this valuable information.*

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

Latest Forum Discussions

See All


Price Scanner via MacPrices.net


Jobs Board

All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.