Path: utzoo!mnetor!uunet!seismo!sundc!pitstop!sun!pepper!cmcmanis From: cmcmanis%pepper@Sun.COM (Chuck McManis) Newsgroups: comp.sys.amiga Subject: Cloning a Mac Message-ID: <52787@sun.uucp> Date: 11 May 88 04:48:03 GMT Sender: news@sun.uucp Lines: 100 Keywords: Let's not thank you. Several people have called for cloning certain aspects of the Macintosh `paradigm' here and frankly I am a bit amused by it. The biggest question is of course "Did you just wake up after a 5 year period of sleep?" No? (Just kidding folks) Apple has *millions* of dollars in the bank and nowhere to spend it, but lawyers can spend it so they seem to give them free reign. Basically, throwing lawsuits out like I might throw out those little plastic bags 3.5" floppies come in. Regardless of your or my feelings on the merits of these cases, the people being sued *must* defend themselves (or lose by default) and that takes many precious resources that neither you, nor I, nor Commodore, nor anyone have to spare. IBM can shut down innovation by stuffing 10 year old technology down our throat as "standard", Apple stifles innovation by suing everybody in sight. Basically, it is in their best interest to do so. So when people spout off with "Let's clone HyperCard!" or "Lets clone QuickDraw!", or even "Let's not reinvent the wheel, lets steal Mac Resources!" I can only suggest that it is a waste of time. If your activity ever came close to being a commercial success you would lose real big, real fast. Rather than ask "How can we do this Mac thing on the Amiga?" ask instead "How can we solve the problem that this Mac things solves better?" A case in point is user interfaces. User interfaces are designed to be intuitive things that you and I can use to get something done with the machine. By applying the principle of least astonishment, we can demonstrate that it is good for things that do similar things have similar user interfaces. (This does not imply that different things have similar user interfaces.) The IBM PC has the user interface of CP/M and a zillion computers before it. You sit looking at a prompt and 'tell' the computer what to do using something very roughly approximating an english sentence. On the Macintosh, they use the user interface that was pioneered by Xerox as part of an effort to change how humans saw computer/human interaction. Unfortunately, when they borrowed the "look and feel" they seemed to have lost the "reason and function" of that user interface. Now on the Amiga we have a user interface that has a little of both in that one is window oriented and the other text oriented. But we also have the capability of *throwing out* the systems idea of a user interface and supplying our own. If it SOLVES THE PROBLEM, then it will be accepted as an improvement. One of the things that Xerox pioneered, and Apple lost, are of course Objects. Objects are those things that the computer works on and does reasonable work on. In nearly every computer universe concieved these Objects are named. Now many people have discussed object oriented systems so I won't go into them in great depth here, the point being that this is the PROBLEM, that the user interface is trying to solve. How to convey to the computer what Actions to perform on what Objects to accomplish some Goal. This of course is an open ended problem that has many solutions, but what the Amiga can try to do is move it's user interface toward solving the problem, and as I don't think either the Mac or the IBM PC solve the problem to well, there is little likelyhood of doing something that those monoliths will be doing. Consider the following random thoughts ... What is an icon? It is a handle on an object that the user can point too. What is a window? It is a manifestation of an Active Object that gives visibilty to the internal actions/properties of an Object. How do you activate an Object? You give it something to work on by dropping another object on to it. How do you control an Object? Through it's opened window. What does an Object do when you drop another object onto it that it doesn't understand? It burps it back at you. How do you create an Object? By dropping something on another object or "kicking" it. Same goes for "cloning" an Object, just drop is on a copy machine. Some things you and I do to/with computers that could use this system ... Want to edit a file? Kick a TextFile progenitor and it pops out a raw text file Object. Drop the text file Object into an editor and change its contents and properties (like it's name). Drop the Text File Object on to the Compiler Object, if it understands the Text file (it has the "C" property, although it could be a "Modula 2" property) it burps out and Object Code object and maybe a TextFile errors object. Kick the "NewObject" generator again and tell it has the property of an executable. Now Drop that object, the ObjectCode Objects, and some LibraryObjects into a LinkObject. It burps out a the ExecutableObject again but now it does something useful. I am sure you get the drift by now. This would be an all graphical system that could do lots of stuff. The nice thing is that you can do this type of design and brainstorming on the Amiga and have a reasonable chance of it working with the existing system. Anyway, this has drawn on a bit to long, bottom line : If you want HyperCard, Resource Forks, and QuickDraw then buy a Mac for chrissake! Don't ignore this stuff and say "Oh we don't need QuickDraw, cause we are better!" instead say "What problem was Apple trying to solve with QuickDraw? Could I do it better? What doesn't it solve? How can I use their experience to profit my design?" Think forward, not backward. --Chuck McManis uucp: {anywhere}!sun!cmcmanis BIX: cmcmanis ARPAnet: cmcmanis@sun.com These opinions are my own and no one elses, but you knew that didn't you.