Windows emulation in Squeak

John Duncan jddst19+ at pitt.edu
Fri Nov 12 01:57:37 UTC 1999


As a far-fetched theory, research into API emulation could be done in
Squeak. The basic premise would be that an environment could be built
into Squeak that would be taught how to understand object files from
an operating system, and then Squeak could auto-generate thunks to
Squeak code as fixups. The old code would be run either natively on
the machine, or under processor simulation within Squeak. The API
implementations in Smalltalk could be updated in real time, as
everything else in Smalltalk is, and so the accumulation of working
APIs could be accomplished much more quickly. This information could
be used to then build normal emulation sets for, say, the Wine and
Executor projects. Also, traditional applications within the system,
such as the Windows UI, could be completely subsumed by Squeak
implementations, which would be in a better position then to be
rewritten as native applications for any who saw the need.

It is my belief that, next to trade secrets, one of the major
deterrents to porting, cloning and reengineering projects is the C
language. If Squeak could come across as the viable platform for
building these sorts of projects, then people would be in a better
position to then go and reimplement the code in language/OS of choice.
After all, why do people do RAD in ST anyway?

Other, similar projects are the development of chip and system
simulators in Squeak, such as the MIPS cycle-accurate chip simulator.
Perhaps ST could be generated directly from VHDL, and retrofitted into
running simulators, so that improvements in chip technology would not
take so long to test.

Just a few thoughts...
-John

--
"In any event, once Robert Craft forged the Stravinsky-Schoenberg axis
in the 1950s and the eclecticism of the 1960s alleviated the austere
serialism of the previous decade, the futures market in Hindemithian
repose was struck by panic selling."
                                  -Glenn Gould





More information about the Squeak-dev mailing list