TweetFollow Us on Twitter

June 91 - Man About Town-News from San Jose

Man About Town-News from San Jose

Howard Katz

Another Worldwide Developer's Conference has come and gone, MacApp 3.0's moving into its next alpha phase, and a decision has been made about the official source language for MacApp 3.0. Where should I start this week? How about with the latter?

MACAPP 3.0 AND C++

The word is out on the question of the MacApp 3.0 source, and it's official: Tom Chavez reports that MacApp 3.0 is going to be maintained in C++, and that's it: a separate source will not be maintained in Object Pascal or produced at a later date through some sort of translation mechanism (one of the suggestions raised earlier).

Is that bad news for Object Pascal users and THINK Pascal types in particular? To be honest, it could have been worse. True, you won't be able to read MacApp sources in Object Pascal, but that doesn't mean you won't be able to program in Object Pascal.

Apple has been working with Symantec to make sure there's an optional switch so that the MacApp library can be produced in a ".o" linkable format that's usable from the THINK Pascal environment. You won't have MacApp source in Object Pascal; you will have an Object Pascal-compatible library.

The biggest loss: you'll no longer be able to single-step through the MacApp sources using THINK's wonderful high level debugging environment. And that's a real shame. So, the question comes to mind-is it livable? Maybe a better question at this point would be-do you have a choice? Like I said, it could have been worse.

CLIMBING THE FENCE

If you're an inveterate Pascal user like myself, what do you do? One choice is to stay with THINK, shrug your shoulders and just accept the situation. Another is to maybe shudder a little bit, then settle in for a long session with Bjarne Stroustrup's "The C++ Programming Language."

Everyone's got to make their own decision. Me? I'm making-very hesitantly and with no small degree of anxiety-a painstakingly slow move across to the C++ side of the fence, after some time spent with THINK C along the way to help fortify my nerves.

But it's tough, it's tough. It's almost embarrassing to see a grown man like myself reduced to such a trembling mass of shakes and quivers. I'll keep you informed as to whether or not I survive the transition. For motivation, I've got a fun little project in mind, that will also get me into Apple Events. I'll be reporting in periodically.

PASCAL '9X UPDATE

Here's something I wanted to talk about in my last column, but it got crowded out by other issues. Derek White from Kurt Schmucker's ATG group in Columbia, Maryland has been quietly working away on the official language specification for Pascal '9x. It's hoped that this project will provide a version of Object Pascal that's feature-compatible with the object-oriented extensions in C++.

Much of Derek's work now consists of formalizing the conclusions that were reached during the '9x session held at the MADA conference in February. He sent me a note summarizing what happened during the session, and I want to quickly run through some of the highlights.

About 45 developers sat in for the four-hour round table discussion. Derek got a hand running things from Kurt and Harvey Alcabes. There was a general consensus that it's important to ship a product as soon as possible, and that in order to do that, the language should be released in phases, with the core, essential features coming first.

MOST POPULAR REQUESTS

Harvey took a poll of what features developers wanted. The winner, far and away, was better encapsulation of data using a mechanism similar to C++'s use of public, protected, and private keywords. As Derek stated, this one's a real winner. It's not that hard for compiler writers to implement, and users find it pretty easy to understand.

What turned out to be more surprising was that everybody wanted to see value-based objects, in which an object variable is the object itself, rather than a reference to an object through either a pointer or a handle. Value-based objects are also referred to as stack-based objects; they get allocated and deallocated automatically on entry to a local stack frame.

To be sure, if you still want an object reference, you can just declare the object as a pointer to a class. But all you C++ nerds knew that already; it's just us unregenerate Pascal types that have to figure this sort of thing out for the first time. (It hurts my head!)

Finally, in the features race, abstract methods and classes placed a distant third.

Most of the session seemed to deal with the issue of constructors, a topic that confused just about everybody. Fully a third of Derek's summary was devoted to more than I ever wanted to know about the subject-be happy that I'm not passing that information on to you! Lots of suggestions were made during the session, but no final consensus on constructors was reached, except that a lot more exploration was called for.

And that's what Derek's been doing since February, with an occasional week off to join his ANSI colleagues from DEC, Microsoft, and Symantec as they work at developing a standard set of features for an object-oriented extension to Pascal. (Now I know what compiler writers do to relax in their time off!)

VOLUME VI

I came back from the Developer's Conference in San Jose with two amazing pieces of documentation: Volume 6 of Inside Macintosh and a slim, unprepossessing little volume titled the Apple Event Object Support Library. First about the new Inside Macintosh…

The scary thing about the new volume is that it's over 1,800 pages long-but the scarier thing about the latest Inside Mac is that it's all new. This volume doesn't replace the first five volumes, it appends them! The entire volume deals strictly with System 7.0-related information, and it's immense!

This is the first time I've paid attention to System 7.0-I guess I subconsciously considered it vaporware until I finally saw the real thing in San Jose-and now I find myself torn between a heady fascination with all the new technical information, and pure, palpitating fear at the scope of what I'm going to have to learn to bring myself up to date.

I mean, we're talking major insecurity; there's a lot of stuff here. It strikes me that the stakes for Apple developers have just gone up tremendously. You know, I thought I already paid my dues!

APPLE EVENTS ARE KEY

I've been spending hours and hours reading and rereading Chapter 6 on the Apple Event Manager. It strikes me that this is the core of what's most important in System 7.0, and that it has far reaching implications.

What those are exactly, I don't have much of a clue at this point. It's more just a sense that the whole concept of cooperating applications is going to radically-and I mean radically-change the way we view the Mac. I don't think anybody can visualize all the ramifications at this point. But it's pretty clear that Apple events are key.

APPLE EVENT OSL

Which brings me back to the other piece of literature I brought back from San Jose. The Apple Event Object Support Library documentation is a lot slimmer than its Inside Macintosh cousin, by at least an order of magnitude, but I think it also has ramifications that are probably just as important in the long run.

Again, this is just a sense on my part. Because, to be honest, I don't understand half of what's in this little guide. It's not too difficult; on the contrary, it's far too easy! It just happens to present some concepts that are different enough from the way I'm used to thinking that I haven't had that "Aha!" experience yet, where everything suddenly falls into place with a bright, crystal-clear focus. But it's coming; it's coming-I can feel it!

So what does this slim little volume talk about? If I understand correctly-and again, I couldn't swear to it -Apple Events describe a protocol for specifying how data is to be transferred back and forth between applications. However, it doesn't say anything about the internal significance of the data. That's up to your applications to agree on. And this is where the Object Support Library comes in.

What the OSL does, apparently, is provide a language that applications can use to talk about their data and make meaningful requests of each other, without having to know anything about the internals of their data. It's like a protocol for data, similar to the Apple Event protocol for event messaging. And I think it's going to form the basis for some very interesting high-level scripting stuff coming down the pike. If you're interested in interesting things, the future looks promising indeed!

Does all this sound sufficiently vague and rambling? Do you think I've been smoking too many bananas? As I said, I don't fully understand all of this yet; it's just clear that it's nifty-peachy-keen, and it's going to be very important a year or two down the road, maybe less! So if I were you, I'd immediately run out and join the Apple Event Developer's Association and pick up a copy of their OSL specs. I don't have a mailing address handy-contact Apple if you need one-but their AppleLink address is (surprise!) AEDA.

THE MACAPP CONNECTION

Is there a MacApp connection to all this rambling, you might ask? Of course! There's some pretty good support built into MacApp 3.0 for Apple Events, particularly if you want to send them. There's not as much support built in for receiving them, if you want to play at being an Apple Event server, but that's coming. Remember, we're still pretty early alpha at this point.

There is no support right now for the Object Support Library, but that'll be showing up with the first beta of 3.0, according to Eric Berdahl, who's been pushing hard to have that happen. Eric has been doing some good stuff with Apple Events. He's got the C++ source for a nifty little application called "FotoMac" on the MADA conference disk. It does a nice job of showing how to do some simple Apple Event messaging in MacApp 3.0. Take a look.

That's it for this week. Back to Inside Mac, Apple Events, and perhaps some play in C++. You Pascal programmers out there, take heart; chin up-the future's rosier than you think.

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

1Password 6.7 - Powerful password manage...
1Password is a password manager that uniquely brings you both security and convenience. It is the only program that provides anti-phishing protection and goes beyond password management by adding Web... Read more
CleanMyMac 3.8.1 - $39.95
CleanMyMac makes space for the things you love. Sporting a range of ingenious new features, CleanMyMac lets you safely and intelligently scan and clean your entire system, delete large, unused files... Read more
Monolingual 1.7.8 - Remove unwanted OS X...
Monolingual is a program for removing unnecesary language resources from OS X, in order to reclaim several hundred megabytes of disk space. If you use your computer in only one (human) language, you... Read more
Lyn 1.8.9 - Lightweight image browser an...
Lyn is a fast, lightweight image browser and viewer designed for photographers, graphic artists, and Web designers. Featuring an extremely versatile and aesthetically pleasing interface, it delivers... Read more
Tweetbot 2.5 - Popular Twitter client.
Tweetbot is a full-featured OS X Twitter client with a lot of personality. Whether it's the meticulously-crafted interface, sounds and animation, or features like multiple timelines and column views... Read more
BusyCal 3.1.7 - Powerful calendar app wi...
BusyCal is an award-winning desktop calendar that combines personal productivity features for individuals with powerful calendar sharing capabilities for families and workgroups. Its unique features... Read more
Adium 1.5.10.3 - Popular instant messagi...
Adium is a fast and free instant messaging client which supports AIM, ICQ, Jabber, MSN, Yahoo!, Google Talk, Yahoo! Japan, Bonjour, Gadu-Gadu, Novell Groupwise, SIP/SIMPLE (Text), and Lotus Sametime... Read more
Adium 1.5.10.3 - Popular instant messagi...
Adium is a fast and free instant messaging client which supports AIM, ICQ, Jabber, MSN, Yahoo!, Google Talk, Yahoo! Japan, Bonjour, Gadu-Gadu, Novell Groupwise, SIP/SIMPLE (Text), and Lotus Sametime... Read more
CleanMyMac 3.8.1 - $39.95
CleanMyMac makes space for the things you love. Sporting a range of ingenious new features, CleanMyMac lets you safely and intelligently scan and clean your entire system, delete large, unused files... Read more
BusyCal 3.1.7 - Powerful calendar app wi...
BusyCal is an award-winning desktop calendar that combines personal productivity features for individuals with powerful calendar sharing capabilities for families and workgroups. Its unique features... Read more

Latest Forum Discussions

See All

Ninja Pizza Girl (Games)
Ninja Pizza Girl 1.0 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0 (iTunes) Description: In the not-so-distant future, rampart traffic congestion has resulted in only one way to deliver pizzas across town in thirty... | Read more »
SCRAP (Games)
SCRAP 1.0 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0 (iTunes) Description: That day, for no apparent reason, SCRAP decided to wake up and run. He had to, because his activation was a mistake the "Factory" could... | Read more »
The Bunker (Games)
The Bunker 1.1 Device: iOS Universal Category: Games Price: $3.99, Version: 1.1 (iTunes) Description: The critically acclaimed console hit "The Bunker" comes to iOS, The groundbreaking live-action thriller adventure set in a real... | Read more »
Die With Glory (Games)
Die With Glory 1.2.0 Device: iOS Universal Category: Games Price: $2.99, Version: 1.2.0 (iTunes) Description: Die with Glory is an epic adventure game where your goal is to die in glorious fashion. You must help Sigurd, a brave old... | Read more »
Get Ike in the new Fire Emblem: Heroes u...
One of the most popular Fire Emblem characters is finally available in a new update to Nintendo'sFire Emblem: Heroes. [Read more] | Read more »
Die With Glory in a new viking adventure...
If you're a fan of classic adventure games you'll do well to pick upDie With Glory, the gorgeous new title from Cloud Castle inc. Die With Glory updatesthe gameplay of the same kind of adventure classics such asMonkey Island for modern, mobile... | Read more »
Get up to speed with everything you need...
In case you haven’t heard, MU Origin just got a colossal new update with new all-server events, battle modes, and systems making their way to the land of MU. Here’s a handy guide to everything you need to know about the latest content. [Read... | Read more »
Minimalist puzzle game, Cuts, free on iO...
If you're looking for a gorgeous puzzle experience on iOS devices, developer Gamebra.in's aesthetically interesting puzzler, Cuts, is discounted to free on the iOS App Store right now. [Read more] | Read more »
Anime tactical RPG, War of Crown, comes...
If you're looking for another tactical RPG fix to go alongside your Fire Emblem Heroes campaigns check out Gamevil's newest, anime-inspired tactics RPG, War of Crown, which comes out tomorrow. [Read more] | Read more »
Fantasy MMORPG MU Origin adds new modes,...
MU Origin, Webzen’s highly popular fantasy MMORPG is getting ready to shake things up for the second time this year, as a new update makes its way to the Google Play and App Store from today. Introducing new systems, modes, and events, the land of... | Read more »

Price Scanner via MacPrices.net

Digital Paper Tablet Offers Distraction Free...
I typically spend 8-10 hours a day gazing at the screens in my laptops and iPad, as tools of my livelihood, I don’t as a rule use electronic devices for pleasure reading. I subscribe to a daily... Read more
“Today at Apple” Bringing New Educational Ses...
Apple has announced plans to launch dozens of new educational sessions next month in all 495 Apple Stores ranging in topics from photo and video to music, coding, art and design, and more. The hands-... Read more
Smart Finance Free Comprehensive Personal Fin...
Moscow-based indie developer, Alexander Survillo has announced the release and immediate availability of Smart Finance: Personal Finance, Budget & Money 1.1.4, an update to his comprehensive... Read more
12-inch 1.1GHz Retina MacBooks on sale for $1...
B&H has 12″ 1.1GHz Retina MacBooks on sale for $100 off MSRP. Shipping is free, and B&H charges NY & NJ sales tax only: - 12″ 1.1GHz Space Gray Retina MacBook: $1199.99 $100 off MSRP - 12... Read more
13-inch 2.7GHz Retina MacBook Pro on sale for...
B&H Photo has the 13″ 2.7GHz Retina MacBook Pro on sale for $130 off MSRP. Shipping is free, and B&H charges NY & NJ tax only: - 13″ 2.7GHz/128GB Retina MacBook Pro (MF839LL/A): $1169 $... Read more
15-inch 2.2GHz Retina MacBook Pros available...
B&H Photo has the 15″ 2.2GHz Retina MacBook Pro available for $200 off MSRP including free shipping plus NY & NJ sales tax only: - 15″ 2.2GHz Retina MacBook Pro (MJLQ2LL/A): $1799.99 $200 off... Read more
13-inch Touch Bar MacBook Pros on sale for up...
B&H Photo has the 2016 Apple 13″ Touch Bar MacBook Pros in stock today for up to $150 off MSRP. Shipping is free, and B&H charges NY & NJ sales tax only: - 13″ 2.9GHz/512GB Touch Bar... Read more
Apple refurbished Apple TVs available for up...
Apple has Certified Refurbished 32GB and 64GB Apple TVs available for up to $30 off the cost of new models. Apple’s standard one-year warranty is included with each model, and shipping is free: -... Read more
12-inch 1.2GHz Retina MacBooks on sale for up...
B&H has 12″ 1.2GHz Retina MacBooks on sale for up to $160 off MSRP. Shipping is free, and B&H charges NY sales tax only: - 12″ 1.2GHz Space Gray Retina MacBook: $1439.99 $160 off MSRP - 12″ 1... Read more
HyperX Ships Pulsefire FPS Gaming Mouse, Winn...
Your reporter is a longtime fan of gaming mice for general purpose coomnputing use, finding them typically superior in comfort and performance. HyperX, a division of Kingston Technology Company, Inc... Read more

Jobs Board

*Apple* Mac Computer Technician - GeekHampto...
…complex computer issues over the phone and in person? GeekHampton, Long Island's Apple Premium Service Provider, is looking for you! Come work with our crew Read more
Product Manager, *Apple* Platforms - Viacom...
…Product Manager to drive the execution of its iOS and AppleTV experiences. The Apple Platform Product Manager will be a leader in our Agile/Scrum environment and Read more
Geek Squad *Apple* Master Consultation Agen...
**500662BR** **Job Title:** Geek Squad Apple Master Consultation Agent **Location Number:** 000286-Canton-Store **Job Description:** **What does a Geek Squad Read more
*Apple* Mobile Master - Best Buy (United Sta...
**500710BR** **Job Title:** Apple Mobile Master **Location Number:** 000279-North Olmsted-Store **Job Description:** **What does a Best Buy Apple Mobile Master Read more
*Apple* Engineering Specialist - CSRA (Unite...
Apple Engineering Specialist All times are in Eastern Daylight Time Requisition ID Job Locations US DC Washington DC Posted Date Category Engineering Sciences Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.