TweetFollow Us on Twitter

May 92 - Software Review - Userland Frontier

Software Review - Userland Frontier

John W. Baxter

In late January, Dave Winer and the rest of the folks at Userland shipped version 1.0 of Frontier. Frontier is a tool with which you can operate the growing number of modern Macintosh applications which can be controlled by sending them suitable Apple Events. Frontier also provides a clean-looking method by which very easily changed menus can be added to an AppleEvent-savvy application (this feature is called "Menu Sharing"). Here is a brief look at Frontier.

Drive those Applications

Frontier has an easy-to-use scripting language which controls both Frontier and other AppleEvent-aware applications. The language is presented in outline form, and Frontier has a good outline editor. The structure of a script is created by the levels of the outline. For example, here is an if statement:
if people.JWB.age > 50
    msg ("John, you are getting old.")
else
    msg ("Come on, John, tell the truth")

The statements controlled by the true branch of the if statement (here, just a msg verb) are indented one outline level inferior to the if. The next statement at the same level as the if marks the end of the controlled statements. Here, that statement is an else. Again, the else controls those statements inferior to it in the outline. As with outlining programs in general, you can hide the details and see only the if and else lines if you like.

The supplied language verbs include many which are implemented in the Frontier kernel and many others which are simply scripts themselves. A full list is well beyond the scope of this column, but one handy structure for script writing is

   on explore(path)
    fileloop (aFile in path)
        if (file.isFolder(aFile))
            explore(aFile)
        else
            « do something to each aFile
            « the « introduces comments

where path identifies an HFS directory, and aFile takes on the path to each file and directory contained in that directory. You can easily recurse down through the directory levels, as shown. The on construct introduces a script (routine).

The outlining capability is useful in its own right, but is limited to single-line headers. The outline editor is fully scriptable. There is also a simple word processing editor, and word processing documents can be maintained within Frontier. That editor is suitable for writing documentation about your Frontier scripts-it is not suitable for the next great novel. The word processing editor is also fully scriptable.

Things are stored in Frontier in a database, managed as a hierarchy of tables starting at a table called root. One of the items in the root table is a table called people, which has items named with the initials of each user of a given Frontier. The first example above assumes that my table, whose full address is root.people.JWB, contains an entry named age whose value is a number. A table entry consists of a name and a value. The value may be as simple as a number or string or as complex as a word processing document, an outline or script, or any Macintosh structure stored in binary form. The set of table manipulation verbs is fully scriptable.

Whose Menus are They, Anyhow

Using AppleEvents, an application can arrange for Frontier to supply one or more menus (which can include hierarchical submenus). A simple but solid-looking protocol provides for the application to inform Frontier of selections of the items in the menus Frontier has defined. The user provides a Frontier script for each such item. That script will usually send one or more AppleEvents to the application requesting services or directing actions. Provision is made for the user to edit the menus within Frontier and for the menus to be adjusted before the next time they are pulled down by the user if they have been edited. If Frontier shuts down, the application is notified and deletes the shared menus; if Frontier launches while a menu-sharing application is running, the menus get added.

Additionally, most of Frontier's own menus are fully editable by the user. Again, each item has a script associated with it. The outline editor (slightly modified) is used to edit menus and assign the scripts.

Userland supplies source code in C for the routines that need to be added to an application to support menu sharing. I've looked at MacApp 3.0, and at this writing I have a working subclass of TApplication which supports Frontier menu sharing. Unfortunately, that subclass is not yet ready for publication.

Agent 86

One of the tables in Frontier contains "agents". These agents are scripts which receive time periodically from Frontier. Frontier ships with an agent which updates a clock in Frontier's main window. An agent can trigger arbitrarily complex scripts. Frontier is pretty good about giving processing time to agents-for example, the agents are given time while Frontier is in the background awaiting a reply to an AppleEvent it sent out as requested by a script.

Almost Faceless Mini-Applications ("Appletts")

Frontier makes sense as a controller for small, nearly faceless applications which provide simple services. This is one of the directions software is moving at the moment, the do-one-thing-and-do-it-well idea. Userland practices what they preach in this area: Frontier's on-line documentation is provided by a separate DocServer application. A control-double-click on any Frontier verb ensures that DocServer is running, sends it AppleEvents directing that the appropriate documentation be displayed, and brings DocServer to the front. There is no technical reason why DocServer wouldn't be available to your application, too. I don't know the legal details at this time.

Paper Documentation

Yes, there is some. A user manual and a scripting language ("UserTalk") reference guide were written by Dan Shafer. They explain Frontier pretty clearly, though some of the more obscure verbs are only referenced, with the DocServer material (also prepared by Dan) being the only documentation.

Apple Object Model

Frontier scripts have the power to create and send AppleEvents which make use of the Object Model. This capability should be highly useful in testing MacApp-based applications which support the Object Model and the Object Support Library. A developer may also wish to supply a suitable "suite" of Frontier scripts to the users of an application.

What's In It for Me?

If you are writing an AppleEvent-driven application, Frontier represents a potentially valuable testing and debugging tool. If your application might benefit from the shared menu idea, that is easy to add. With or without Frontier, you were going to support AppleEvents for commanding your application, weren't you? There is no extra work there (and Userland will help you prepare the file which sets up the necessary verbs in Frontier to drive your application the way you want it driven).

Besides all that, Frontier is an amusing "toy", too. I have a script which runs my FarSide calendar the first time each day that Frontier starts up (I have Frontier starting from my Startup Items folder).

Availability

Frontier is available direct from Userland. Recently, Frontier has also found its way into the mail order and retail distribution system. Userland can be found in the Third Party area on AppleLink and in their own forum on CompuServe. Their address is UserLand Software, Inc., 490 California Ave, Palo Alto, CA 94306. Telephone (415) 325-5700; fax (415) 325-9829.
 
AAPL
$445.15
Apple Inc.
+3.01
MSFT
$34.27
Microsoft Corpora
+0.12
GOOG
$873.32
Google Inc.
-9.47

MacTech Search:
Community Search:

Software Updates via MacUpdate

Evernote 5.1.1 - Create searchable notes...
Evernote allows you to easily capture information in any environment using whatever device or platform you find most convenient, and makes this information accessible and searchable at anytime, from... Read more
SketchUp 13.0.3688 - Create 3D design co...
SketchUp is an easy-to-learn 3D modeling program that enables you to explore the world in 3D. With just a few simple tools, you can create 3D models of houses, sheds, decks, home additions,... Read more
Flavours 1.0.8 - Create and apply themes...
Flavours allows users to create, apply, and share beautifully designed themes. Classy - Give your Mac a gorgeous new look by applying delicious themes! Easy - Unleash your creativity and make your... Read more
GarageSale 6.6b10 - Create outstanding e...
GarageSale is a slick, full-featured client application for the eBay online auction system. Create and manage your auctions with ease With GarageSale, you can create, edit, track, and manage... Read more
Twitter 2.2.1 - Official Twitter client...
Twitter (was Tweetie) is a Twitter client with a variety of features. Important Note: As of January 2011, AteBit's Tweetie application has been acquired and renamed by Twitter. Version 1.2.8 of the... Read more
SteerMouse 4.1.6 - Powerful third-party...
SteerMouse is an advanced driver for USB and Bluetooth mice. It also supports Apple Mighty Mouse very well. SteerMouse can assign various functions to buttons that Apple's software does not allow,... Read more
Google Chrome 27.0.1453.93 - Modern and...
Google Chrome is a Web browser by Google, created to be a modern platform for Web pages and applications. It utilizes very fast loading of Web pages and has a V8 engine, which is a custom built... Read more
Labels & Addresses 1.6.5 - Powerful...
Labels & Addresses is a home and office tool for printing all sorts of labels, envelopes, inventory labels, and price tags. Merge-printing capability makes the program a great tool for holiday... Read more
Delicious Library 3.0.2 - Import, browse...
Delicious Library allows you to import, browse, and share all your books, movies, music, and video games with Delicious Library. Run your very own library from your home or office using our... Read more
KeyCue 6.5 - Displays all menu shortcut...
KeyCue helps you to use your OS X applications more effectively. Just hold down the Command key for a while - KeyCue comes to help and shows a table of all currently available keyboard shortcuts.... Read more

Kite Surfer Review
Kite Surfer Review By Rob Rich on May 24th, 2013 Our Rating: :: MAKE SOME WAVESUniversal App - Designed for iPhone and iPad Kite Surfer looks good and controls great, although it’s also a little light on content.   | Read more »
Spottlife Review
Spottlife Review By Lee Hamlet on May 24th, 2013 Our Rating: :: CATEGORIZE YOUR SOCIAL LIFEiPhone App - Designed for the iPhone, compatible with the iPad Spottlife is a new way to view and interact with the world’s most popular... | Read more »
Plasma Pig Review
Plasma Pig Review By Jordan Minor on May 24th, 2013 Our Rating: :: THAT'LL DO, PIGUniversal App - Designed for iPhone and iPad This porky pig needs a light touch.   | Read more »
Hipstamatic Oggl Review
Hipstamatic Oggl Review By Chris Kirby on May 24th, 2013 Our Rating: :: HIP YET AGAIN Remember Hipstamatic? It’s back with a host of features to challenge the likes of Instagram.   Developer: Hipstamatic Price: Free Version... | Read more »
How I Used RadarScope To Track The Oklah...
It could have easily happened that my life would have taken me down the road of becoming a meteorologist. However, that didn’t happen and I found myself becoming a journalist instead. My passion for weather is still present and I have a good... | Read more »
Tetris Blitz Review
Tetris Blitz Review By Carter Dotson on May 24th, 2013 Our Rating: :: TREPAK BLITZUniversal App - Designed for iPhone and iPad There’s fun to be had in short bursts with Tetris Blitz, but it just feels way too engineered to be fun... | Read more »
Dumb Ways to Die Lets You Save Cute Litt...
Dumb Ways to Die Lets You Save Cute Little Creatures…Maybe Posted by Andrew Stevens on May 24th, 2013 [ permalink ] Universal App - Designed for iPhone and iPad | Read more »
Nikko RC Racer Review
Nikko RC Racer Review By Jennifer Allen on May 24th, 2013 Our Rating: :: STRAIGHTFORWARD RACINGUniversal App - Designed for iPhone and iPad Fun for five minutes, Nikko RC Racer lacks some serious staying power, feeling all too... | Read more »
Delifishes Review
Delifishes Review By Lee Hamlet on May 24th, 2013 Our Rating: :: YOU JELLY?Universal App - Designed for iPhone and iPad Playing Delifishes brings back memories of the first generation of mobile games, which is by no means a bad... | Read more »
4 Kingdoms Review
4 Kingdoms Review By Campbell Bird on May 24th, 2013 Our Rating: :: YET ANOTHER KINGDOM GAMEiPad Only App - Designed for the iPad 4 Kingdoms offers familiar menu-based, freemium management gameplay with a fresh coat of cosmetic... | Read more »

Price Scanner via MacPrices.net

Apple drops prices on refurbished iPads and iPad m...
 Apple today dropped prices on Apple Certified Refurbished iPad 4s and iPad minis with some models now available for up to $140 off the cost of new models. Apple’s one-year warranty is included with... Read more
Should You Upgrade To OS X 10.8 Mountain Lion This...
If you haven’t upgraded to OS X 10.8 Mountain Lion by now, there’s probably a case to be made for just holding out with whatever earlier version you’re using until we see what Apple brings forth with... Read more
Apple Tops Gartner Supply Chain Top 25 Rankings Fo...
Gartner, Inc. has released the findings from its ninth annual Supply Chain Top 25. The goal of the Supply Chain Top 25 research initiative is to raise awareness of the supply chain discipline and how... Read more
7-inch Tablets: What User Experience Benchmarks Sh...
A new Tablet User Experience Research survey by Pfeiffer Consulting indicates that user experience with tablets and smartphones is one of the most important aspects of the overall perceived value of... Read more
PayPal Global Study Spells Doom for the Wallet – C...
PayPal has revealed the findings of a global study that paints a dim future for the wallet. A vast majority (83%) of respondents across five countries indicated they wished they didnt have to carry a... Read more
How to Set Up Your Mac to Allow AirPrinting From i...
mac.tutsplus.com’s Jordan Merrick says: AirPrint is a great feature of iOS that provides a simple way of printing documents from your iPhone or iPad directly to an AirPrint-compatible printer with no... Read more
Price drop on refurbished 15″ 2.3GHz MacBook Pro,...
 The Apple Store has lowered their price on Apple Certified Refurbished 15″ 2.3GHz MacBook Pros to $1449 or $350 off the cost of new models, including free shipping. Apple’s one-year warranty is... Read more
Memorial Day Weekend iMac sale: $150 off MSRP
 Best Buy has iMacs on sale for $150 off MSRP on their online store for Memorial Day Weekend. Choose free home shipping or free instant local store pickup (if available): - 27″ 3.2GHz iMac: $1849.99... Read more
Economic Conservatives Defend Apple’s Tax Strategy
Given Apple’s longtime reputation as the particular darling of the liberal lefty end of the spectrum, it’s been facinating to see mostly prominant conservatives rallying to the defense of Apple’s... Read more
Is Apple Losing Its “Cool” Cachet With The Popular...
SMH’s Steve Colquhoun notes that while Apple has again been rated as the world’s top brand this week, a leading social researcher warns the company and its products are losing touch with Generation Y... Read more

Jobs Board

*Apple* Retail - Manager - Apple Inc. (...
Job Summary Keeping an Apple Store thriving requires a diverse set of leadership skills, and as a Manager, you’re a master of them all. In the store’s fast-paced, Read more
*Apple* Account Executive - CompuCom (U...
Apple Account Executive Job Location US-IL-Des Plaines Posted Date 3/27/2013 Req # 2013-4905 Apply/Socialize: * Apply Now! * Email this opportunity to a friend or Read more
*Apple* - Solution Architect - CompuCom...
Apple - Solution Architect Job Location US-TX-Dallas Posted Date 4/18/2013 Req # 2013-4932 Apply/Socialize: * Apply Now! * Email this opportunity to a friend or Read more
Mac/ *Apple* Specialist Needed - Enterp...
Mac/ Apple Specialist Needed - Enterprise iPad Deployment A prominent Robert Half client is seeking out a Mac/ Apple Specialist to assist with an iPad deployment Read more
Mac/ *Apple* Specialist Needed | Enterp...
Mac/ Apple Specialist Needed | Enterprise iPad Deployment A prominent Robert Half client is seeking out a Mac/ Apple Specialist to assist with an iPad deployment Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.