🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sys.mac
Article #13772

Re: MacApp Sources...

#13772
From: Larry Rosenstein
Date: Thu, 11 Dec 1986 21:43
57 lines
3223 bytes
In article <125@trwspf.UUCP> vito@trwspf.UUCP (Herb Barad) writes:
>
>When will this happen and with which languages.  Personally, I would like
>to see better access to the toolbox from Smalltalk.  In fact, I would like
>to prototype applications in Smalltalk and (when finished with what I've
>got), convert the Smalltalk code into a language (Object Pascal or
>Object Assembler) and get real performance!!!
>

In general, there are 2 ways to be compatible with MacApp.

First is to adopt the MPW object module format and the Object Pascal method
call runtime scheme (which was described in the December MacTutor, by the
way).  If you do this, then you can use a pre-compiled version of MacApp and
only have to convert the MacApp interfaces into your language.

Second is to translate MacApp into your lanaguage.  This is a relatively big
job, because MacApp is about 20,000 lines of code.

If any language developer is interesting in supporting MacApp s/he can write
to the MacApp product manager:
	Harvey Alcabes
	Apple Computer
	20525 Mariani M/S 27-S
	Cupertino, CA 95014

It interesting tha Smalltalk was mentioned, because there is an ongoing
research project at Apple investigating putting MacApp in Smalltalk.  This
was demonstrated at OOPSLA last October, but is not currently available.
(It is based on a very old version of MacApp and is somewhat fragile.)

The Smalltalk runtime is very different from that of Object Pascal, so the
Smalltalk people wrote a translator (in Smalltalk).  The translator did not
do a 100% job, so they then hand edited the result.

They are able to run some of the simple sample programs and switch back and
forth from the Macintosh world to the Smalltalk world.  (They implement 2
different screens.)  While the MacApp program is running, you have the usual
Macintosh user interface (desk accessories, pull-down menus, etc.).  

As you might imagine, there are a lot of issues that still need to be
resolved, which is why it is a research project.  For example, there is no
Smalltalk to Pascal translator.  Second, there are Pascal constructs that
Smalltalk doesn't support such as VAR parameters.  Third, some Toolbox calls
require a procedure pointer as a parameter, which is difficult to do in
Smalltalk.  Finally, there are issues involved with memory management
because the Smalltalk heap is separate from the Macintosh heap.

-- 
Larry Rosenstein

Object Specialist
Apple Computer

AppleLink: Rosenstein1
UUCP:  {sun, voder, nsc, mtxinu, dual}!apple!lsr
CSNET: lsr@Apple.CSNET
Technical Details
Message-ID: <373@apple.UUCP>
Path: arc1-ca.pugleaf.net!utzoo!mnetor!seismo!lll-crg!lll-lcc!pyramid!voder!apple!lsr
References: <MS.V3.18.rs4u.80021707.lyndora.sun3.81.0@andrew.cmu.edu> <364@apple.UUCP> <125@trwspf.UUCP>

Show Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: arc1-ca.pugleaf.net!utzoo!mnetor!seismo!lll-crg!lll-lcc!pyramid!voder!apple!lsr
From: lsr@apple.UUCP (Larry Rosenstein)
Newsgroups: comp.sys.mac
Subject: Re: MacApp Sources...
Message-ID: <373@apple.UUCP>
Date: Thu, 11-Dec-86 16:43:36 EST
Article-I.D.: apple.373
Posted: Thu Dec 11 16:43:36 1986
Date-Received: Sat, 13-Dec-86 22:35:20 EST
References: <MS.V3.18.rs4u.80021707.lyndora.sun3.81.0@andrew.cmu.edu> <364@apple.UUCP> <125@trwspf.UUCP>
Reply-To: lsr@apple.UUCP (Larry Rosenstein)
Organization: Advanced Development Group, Apple Computer
Lines: 57
Keywords: MacApp, Smalltalk