Newsgroups: comp.lang.smalltalk
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!news2.near.net!howland.reston.ans.net!spool.mu.edu!torn!nott!cunews!tina.mrco.carleton.ca!knight
From: knight@mrco.carleton.ca (Alan Knight)
Subject: Re: Implementing Smalltalk
Message-ID: <knight.795983887@tina.mrco.carleton.ca>
Sender: news@cunews.carleton.ca (News Administrator)
Reply-To: knight@mrco.carleton.ca (Alan Knight)
Organization: The Object People
References: <3kleae$2kj@hopper.acm.org> <3knamq$2h7@News1.mcs.com>
Date: Thu, 23 Mar 1995 18:38:07 GMT
Lines: 32

In <3knamq$2h7@News1.mcs.com> jim.fleming@bytes.com (Jim Fleming) writes:

>Along these lines, it should be pointed out that there are many
>trade-offs that go into specifying, designing and developing a
>virtual machine or a family of virtual machines. One of the key
>differences in Smalltalk and C+@ from the VM point of view is that
>C+@ has no graphics primitives built into the VM. Because C+@ was
>developed after Smalltalk and because processors are now faster,
>we could afford to keep the VM "minimal" and we dynamically load
>almost everything on top of the minimal engine.

Along these lines it should be pointed out that there is actually more
than one implementation of Smalltalk in existence and that they make
rather different design trade-offs. ParcPlace Smalltalk (which is the
one Mr. Fleming appears to be familiar with) does all of its own
graphics, emulating the windowing system. This gives extremely good
portability but requires them to do more work and to have graphics
primitives in their VM (OE).

Digitalk Smalltalk, on the other hand, uses the operating system
controls. They don't have any graphics primitives in their VM, but use
a clever mechanism called a DLL to call operating system graphics
routines.

It is unwise to make assumptions about the way Smalltalk does
things based on one implementation.

-- 
 Alan Knight                | The Object People
 knight@acm.org             | Smalltalk and OO Training and Consulting
 alan_knight@mindlink.bc.ca | 509-885 Meadowlands Dr.
 +1 613 225 8812            | Ottawa, Canada, K2C 3N2
