TweetFollow Us on Twitter

Nov 90 Letters
Volume Number:6
Issue Number:11
Column Tag:Letters

SteveForth Corrections

By Kirk Chase, Editor, MacTutor

SteveForth Correction

Steve Hawley

Mountain View, CA

Recently I discovered that SteveForth, a FORTH system that I wrote, had been given a brief write-up in MacTutor Magazine by Jörg Langowski [April 1990-ed.]. I am elated that my work has received a certain measure of exposure in your journal, and I am grateful for the positive marks from Mr. Langowski.

I am at the same time distressed because SteveForth is also misrepresented in the very first paragraph. Mr. Langowski write: “There is a new public domain Forth available in NetLand: SteveForth ” I would like to point out that SteveForth is NOT public domain, nor is it shareware. It is currently in Beta release and is not entirely stable. I do not feel it is ready for a general release, which is why the following paragraph appears in the documentation:

“Thanks for volunteering to beta-test SteveForth. I really appreciate it, and as a token of my appreciation, I have made the source code available to you. I must point out that I do not want SteveForth to be given away until it has been thrashed sufficiently by you. I wrote SteveForth in the space of a semester completely by myself along with a full course load. There’s no possible way it could be completely stable. I’d like to know who my beta-testers are so I can provide them with patches and bug fixes as soon as possible. Giving SteveForth to someone else at this stage isn’t fair to who you give it to, and it isn’t fiar to me, so please don’t do it.”

I am dismayed that Mr. Langowski completely ignored this paragraph (although it is apparent he read the documentation), and offered to give SteveForth away himself without contacting me for approval.

SteveForth is currently on the back burner, as I am busy with other projects and no longer have the convenient access to a Macintosh for development. I anticipate that it will be ready for shareware release sometime in 1991.

Steve Hawley

hawley@adobe.com

Tool Window Manager - Pascal

Brendan Murphy

Palatine, IL 60067

Included on the source code disk for this month (#62) is a Pascal version of the Tool Window Manager written by Mr. Fruin [for the December 1989 issue. I have also included the source on that source code disk, #39-ed]. It was written in TML Pascal II and I have used it with Think Pascal. I translated it from C to Pascal a month after the article came out. I thought of sending it in, but then I read the comment Mr. Fruin made about a Pascal version being forth coming and decided it was not needed. There are no comments in the file--one of life little pleasures! It seems to be fairly well debugged, but there are some flaws in the original design of the unit. For example, being able to float a modeless dialog. The dialog manager gets in the way. Also it is not flexible enough (makes to many assumptions about how people want to have there windows float). Future enhancements could include multiple layered groupings of windows and a more sophisticated multiple active window scheme. Even though I’ve used this unit, I recommend that people use Think’s Class Library instead because it has floating windows and you gain all of there other classes! Besides, it is a good idea to get on the object-oriented programming band wagon before it runs you over. I highly suggest that MacTutor take a more aggressive role in supporting TCL like MacApp Developers Association supports MacApp. I don’t see TCL competing with MacApp, but filling a need where MacApp would be over kill by a factor of ten (which is most of the time).

Pearl Lisp Update

Stephen E. Miner

Mountain View, CA

Your reader might want to know that my article, “Objects in Pearl Lisp” which appeared in the August 1990 issue of your magazine, was submitted a while ago. Since that time, Apple has acquired Coral and discontinued the Pearl Lisp product. Coral’s Common Lisp product is now known as Macintosh Allegro Common Lisp, and is available from APDA.

Although the current version of Macintosh Allegro Common Lisp (MACL) still uses “Object Lisp” implementation of object-oriented programming, the future belongs to the Common Lisp Object System (CLOS) standard. (See Common Lisp: The Language, Second Edition, by Guy L. Steele, Jr. for more information on the CLOS standard.) Apple promises to implement CLOS in the next version of MACL. In the meantime, an implementation of Portable CommonLoops (PCL), which is evolving towards the CLOS standard, is available by anonymous FTP from Arisia.xerox.com or by ordering through APDA.

On a personal note, I’m now working as a Macintosh software consultant at the Institute for Research on Learning in Palo Alto.

B-Tree References

Melvyn D. Magree

Plymouth, MN

I would like to add some references and thoughts to Clifford Story’s article, Language Translation, Binary Trees.

First, Niklaus Wirth’s Algorithms + Data Structures = Programs has a good discussion of tree structures and includes the procedures in Pascal. He discusses Optimal Trees (which he uses for a compiler example), Balanced Binary Tree, and B-Trees among others.

I used Wirth’s B-Tree algorithms as the starting point for B-Tree HELPER™, extending it with reading and writing pages of the tree to a file, managing keys and records separately, getting and releasing file space in a random file, and searching for keys less than or greater than a given key.

Second, D. Comer’s “The Ubiquitous B-Tree” gives a history, rationale, and explanation of B-Trees. His article appears in ACM Computing Surveys, Vol. 11, No. 2, June 1979. He also includes an extensive bibliography.

Comer also explains B*-Trees and B+-Trees. B*-Trees were named by Donald Knuth in The Art of Computer Programing, Vol. 3, Searching and Sorting. Knuth proposed that B*-Trees had nodes that were at least 2/3 full rather than 1/2 full. Many people use the name B*-Tree for another B-Tree variation proposed by Knuth. Comer says that Knuth did not name this variation, but Comer chooses to call it B+-Tree. B+-Trees have all keys in the leaves of the tree. The leaves are also linked from left-to-right making B+-Tree ideal for sequential search. The disadvantage is that some keys are duplicated several times, but there are ways to reduce the storage requirement. I did not use B+-Trees in B-Tree HELPER.

If any reader is looking for a good research topic for a paper or article, consider doing an update on “The Ubiquitous B-Tree”.

Mac286

Orange Micro, Inc.

1400 N. Lakeview

Anaheim, CA 92807

(714) 779-2772

You can now have the best of both worlds. Orange Micro’s Mac286 is a 8MHz, Intel 08286 board fro the Mac II. It literally is a second computer in your Macintosh. With the Mac286, you can execute DOS applications in one window, while you run Mac Programs in another. The Mac286 makes your Mac a full AT compatible. And since this is a hardware/software solution, you will get higher performance than just software solutions. There is also Mac86, a XT compatible board for the Mac SE.

New Product Compatibility Checklist

Kirk Chase

MacTutor

With Apple’s introduction of new products, Apple sent a compatibility letter over AppleLink. The new CPUs will be running System 6.0.6. For those who are not on AppleLink, here is a brief synopsis of the compatibility check list found in that letter.

1. Your application should not write directly to hardware (especially ADB or SCSI). It should call the appropriate system software managers.

2. Do not assume the presence of a floating point unit (FPU) on 68020 and 68030 machines. Always check for it explicitly. The July 1990 issue of Apple Direct (FYI on page 4) discusses this and has more information about how to check for the presence of an FPU.

3. Do not assume monitor pixel resolution (particularly for the color monitor). Check explicitly for the monitor resolution. See “Inside Macintosh”, Volume V, chapters ‘Color QuickDraw’ and ‘Graphics Devices’ for more information.

4. Do not assume the dimension of a monitor (i.e. 640x480). Check explicitly for the monitor size. Always follow the Apple guidelines and size windows automatically according to Technical Note #2.

5. System Software 6.0.6 and System Software 7.0 share the same Sound Manager. Every effort has been made to keep applications that properly addressed the old Sound Manager from breaking. You should carefully check your application with System 6.0.6 for compatibility. MacinTalk will NOT work with System 6.0.6 or System 7.0. If your application requires Macintalk, you will need to rewrite the sound portion of your application for the new Sound Manager.

5a. There is Sound Manager incompatibility between HyperCard 1.2.5 and the Sound Manager in System Software 6.0.6. This sound incompatibility will exist with the Sound Manager in all System Software releases beginning with System Software 6.0.6. However, HyperCard 1.2.5 can run under System Software 6.0.6 if the sound is set to 0 in the Sound CDEV before starting HyperCard. This incompatibility is fixed in HyperCard 2.0.

6. Macintosh SE/30 expansion card developers need to check for several things:

• Cards should be clock/speed independent

• Cards should take CPUCLK off of pin A38 and take C16M off of pin C38

• Cables should be at least 8.6 inches long

• Cards need to fit the latest form factor guidelines described in “Designing Cards and Drivers for the Macintosh Family, Second Edition”.

7. Nubus expansion card developers need to check for several things:

• Cards should be within the NuBus power specification for ONE slot

• Those cards which exceed the power specification for ONE slot should come with documentation that alerts customers that the card should be used in a machine with multiple slots.

• Cards need to fit the latest form factor guidelines described in “Designing Cards and Drivers for the Macintosh Family, Second Edition”.

• Do not assume that memory is a contiguous physical range. Logical addresses may not be the same as physical addresses. Master NuBus cards that may make accesses to the Macintosh RAM space need to be aware of this and use the appropriate Virtual Memory Manager calls to determine the physical memory locations. See “Inside Macintosh”, Volume VI for more details.

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

Latest Forum Discussions

See All

The Astral Express sets off to bring Hon...
After vanquishing yet another threat and adding a fine hat to their wardrobe, you’d think the crew of the Astral Express would be able to kick back after their adventures in Penacony. Clearly not though, as HoYo has announced the next leg of the... | Read more »
Dragons rein supreme in Pokemon Unite as...
If you were looking for the strongest type in Pokemon and asked the fanbase, I would wager most people's thoughts would turn to Dragon. They hit hard, are often powerful, and get used by some of the toughest trainers. Pokemon Unite is honouring... | Read more »
Players can take a peek into the design...
It doesn’t matter how much effort developers put into their classes, or how many special little mechanics there are; if there is one that wields two blades, I’m ignoring everything else. Diablo Immortal recently announced such a class in the shape... | Read more »
Android users have a new option in the c...
When you are in the thick of a firefight or trying to pull off a mid-combat parkour flip through a squad of foes, sometimes touchscreen control just won’t do it for you. For those intense sessions, you could benefit from a good mobile controller,... | Read more »
Jagex releases the first of three origin...
At this point, I am sure everyone has heard of Runescape, and or Runescape Classic. It has been going strong for 23 years, with constant content and story coming out. Luckily for fans of the game, or fantasy in general, Jagex has announced an... | Read more »
Watcher of Realms unveils new story and...
Watcher of Realms players are in for quite the feast this month, as Moonton release two powerful new heroes, including one that will burst down even the most mighty of foes. Recruit your new friends, and then burn through the Main Quest expansion... | Read more »
Reverse: 1999 continues its trip down un...
The field trip to Australia continues in Reverse: 1999 as Phase 2 of Revival! The Uluru Games kicks off. You will be able to collect new characters, engage with new events, get hordes of free gifts, and follow the story of a mushroom-based... | Read more »
Ride into the zombie apocalypse in style...
Back in the good old days of Flash games, there were a few staples; Happy Wheels, Stick RPG, and of course the apocalyptic driver Earn to Die. Fans of the running over zombies simulator can rejoice, as the sequel to the legendary game, Earn to Die... | Read more »
Top Mobile Game Discounts
Every day, we pick out a curated list of the best mobile discounts on the App Store and post them here. This list won't be comprehensive, but it every game on it is recommended. Feel free to check out the coverage we did on them in the links below... | Read more »
Netflix Games expands its catalogue with...
It is a good time to be a Netflix subscriber this month. I presume there's a good show or two, but we are, of course, talking about their gaming service that seems to be picking up steam lately. May is adding five new titles, and there are some... | Read more »

Price Scanner via MacPrices.net

Amazon is blowing out clearance 13-inch M1 Ma...
Amazon has clearance Apple 13″ M1 MacBook Airs on Memorial Day sale for $300 off original MSRP, only $699. Their prices are the lowest available for new MacBooks this Holiday shopping season. Stock... Read more
MacBook Sale! 13-inch M2 MacBook Airs are onl...
Best Buy has Apple 13″ MacBook Airs with M2 CPUs in stock and back on sale this week on their online store for $150 off MSRP in Space Gray, Silver, Starlight, and Midnight colors. Prices start at... Read more
Apple increases iPhone trade-in values ahead...
Get up to $650 on the purchase of new or refurbished iPhone at Apple using their official Trade In program, now with increased values ahead of WWDC 2024. Trade in your old iPhone, and Apple will... Read more
Amazon has Apple’s iPad discounted to a new l...
Amazon has Apple’s 10th-generation WiFi iPads on sale discounted up to $40 off MSRP, starting at only $334. With the discounts, Amazon’s prices are the lowest we’ve seen for these iPads: – 10″ 10th-... Read more
13-inch M3 MacBook Airs on sale for $100 off...
Best Buy has Apple 13″ MacBook Airs with M3 CPUs in stock and on sale this week for $100 off MSRP. Prices start at $999. Their prices, along with Amazon’s, are the lowest currently available for new... Read more
Weekend Deal! Best Buy has Apple Watch Series...
Best Buy has Apple Watch Series 9 models on sale for $100 off MSRP on their online store this weekend. Sale prices available for online orders only, in-store prices may vary. Order online, and choose... Read more
Apple Watch SE on sale starting at $199 this...
Best Buy has all Apple Watch SE models on sale this weekend for $50 off MSRP on their online store. Sale prices available for online orders only, in-store prices may vary. Order online, and choose... Read more
Mac Pro with M2 Ultra CPU on sale for $6699,...
In the market for one of Apple’s Mac Pro towers? B&H Photo has the base Mac Pro with an Apple M2 Ultra CPU, 64GB RAM, and 1TB SSD on sale for $6699 including free 1-2 day shipping to most... Read more
New May Verizon promotion: Switch and get a f...
Red Hot Deal Days at Verizon: Switch to Verizon this month, and get the 256GB iPhone 15 Pro for free, with trade-in, when you add a new line of service. Verizon is also offering a free cellular iPad... Read more
Updated Apple MacBook Price Trackers
Our Apple award-winning MacBook Price Trackers are continually updated with the latest information on prices, bundles, and availability for 16″ and 14″ MacBook Pros along with 13″ and 15″ MacBook... Read more

Jobs Board

Salon Manager BTC - *Apple* Blossom Mall -...
Salon Manager BTC - Apple Blossom Mall Location:Winchester, VA, United States (https://jobs.jcp.com/jobs/location/144535/winchester-va-united-states) - Job Read more
Omnichannel Associate - *Apple* Blossom Mal...
Omnichannel Associate - Apple Blossom Mall Location:Winchester, VA, United States (https://jobs.jcp.com/jobs/location/191170/winchester-va-united-states) - Apple Read more
Beauty Consultant - *Apple* Blossom Mall -...
Beauty Consultant - Apple Blossom Mall Location:Winchester, VA, United States (https://jobs.jcp.com/jobs/location/191170/winchester-va-united-states) - Apple Read more
Hair Stylist - *Apple* Blossom Mall - JCPen...
Hair Stylist - Apple Blossom Mall Location:Winchester, VA, United States (https://jobs.jcp.com/jobs/location/191170/winchester-va-united-states) - Apple Blossom Read more
Operations Associate - *Apple* Blossom Mall...
Operations Associate - Apple Blossom Mall Location:Winchester, VA, United States (https://jobs.jcp.com/jobs/location/191170/winchester-va-united-states) - Apple Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.