For Programmers: Free Programming Magazines  


Home > Archive > Smalltalk > September 2005 > Wanted: smalltalk 'microcode'









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author Wanted: smalltalk 'microcode'
David Given

2005-08-26, 7:00 pm

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

I'm trying to build an embedded device, based on an ARM6 with 8MB RAM. (It's
actually a repurposed Amstrad eMailer Plus, for those of you in the UK.)

Given that this device is about an order of magnitude more powerful than the
original Alto workstation, a Smalltalk system should fit on it really
rather well.

The only problem is finding a Smalltalk engine to actually run on it. I have
no idea where to find the Alto microcode, and it's probably useless to me
anyway; my best bet would be to recompile an existing engine in C. However,
practically all the Smalltalk engines I can find are far too heavyweight
for my purposes. Squeak is vast, and very difficult to manage; GNU
Smalltalk is better, but still assumes it's running on a device with an OS;
the best I can find is Little Smalltalk, which is sufficiently far from the
S-80 standard that actually running software on it would be hard. Also, I
don't think it would scale *up* far enough to be useful.

What I want is a engine that will run in a single thread, with no (or very
little) outside interaction, and just churn through bytecodes. Can anyone
suggest anything?

- --
+- David Given --McQ-+ "A character is considered to be a letter if and
| dg@cowlark.com | only if it is a letter or digit (§20.5.16) but is
| (dg@tao-group.com) | not a digit (§20.5.14)." --- SMSDN Java
+- www.cowlark.com --+ documentation

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFDDz1Jf9E0noFvlzgRAmEFAJ4+ZjXB4WmF
T2XbQBq5yJD6XxZvQgCgqFaU
z3w/5UkD/RQlZ1nQQNhIKcs=
=EHV8
-----END PGP SIGNATURE-----
Chris Uppal

2005-08-27, 3:57 am

David Given wrote:

> The only problem is finding a Smalltalk engine to actually run on it. I
> have no idea where to find the Alto microcode, and it's probably useless
> to me anyway; my best bet would be to recompile an existing engine in C.
> However, practically all the Smalltalk engines I can find are far too
> heavyweight for my purposes. Squeak is vast, and very difficult to
> manage; GNU Smalltalk is better, but still assumes it's running on a
> device with an OS; the best I can find is Little Smalltalk, which is
> sufficiently far from the S-80 standard that actually running software on
> it would be hard. Also, I don't think it would scale *up* far enough to
> be useful.


Isn't there an emulation of the original Smalltalk 80 VM and image in VW-space
somewhere ? I forget who produced it (Vassily ?) but you may be able to find
it somewhere. Presumably you could bootstrap that -- you'd have (I presume)
to write your own emulator for whatever hardware base it assumes it will run on
(translating the VW emulation into C), but that (I would think) would be the
/fun/ part of the project...

-- chris


Jecel

2005-08-27, 6:59 pm

David,

you can find the microcode for the Dorado implementation of Smalltalk
at

http://www.bitsavers.org/pdf/xerox/...lkMicrocode.pdf

I don't think this will help you and in fact might actually get in the
way of your real goal. Some Smalltalk computers were built with the
specifications you are interested in - see near the bottom of

http://www.merlintec.com:8080/Hardware/26

My experience with Little Smalltalk is pretty good, but I would say
that Squeak is a far better choice for you. Check out the Spoon
variation of Squeak by Craig Latta where the virtual machine is 125KB
and the image only 91KB

http://www.netjam.org/spoon/

You might also want to do something where the development system is
separate from the target hardware, like in Pocket Smalltalk or
Resilient (OOVM)

http://www.pocketsmalltalk.com/
http://www.smalltalk.org/versions/OOVM.html

As Mr. Spock would say "there are always alternatives"

-- Jecel

David Given

2005-08-30, 7:57 am

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Jecel wrote:
[...]
> My experience with Little Smalltalk is pretty good, but I would say
> that Squeak is a far better choice for you. Check out the Spoon
> variation of Squeak by Craig Latta where the virtual machine is 125KB
> and the image only 91KB


I've already looked at Spoon; it's not really in a working state just yet
and it's based on Squeak, which I can't abide (and has a problematic
license).

Off-line I've had suggested to me that I look at Susie
(http://susie.dargos.com/), which is a PDST derivative; it looks quite
promising.

Is there a Smalltalk-80-like class library available for LST, by any chance?
I'm quite attracted to it simply *because* of its small size and
simplicity.

[...]
> http://www.pocketsmalltalk.com/


Pocket Smalltalk isn't really Smalltalk --- no symbols, for example --- and
requires a fairly painful IDE in order to do anything with. I don't believe
it supports any kind of incremental programming.

> http://www.smalltalk.org/versions/OOVM.html


I can't actually figure out from the web page what this actually is, or
where to get it...

- --
+- David Given --McQ-+ "USER'S MANUAL VERSION 1.0: The information
| dg@cowlark.com | presented in this publication has been carefully
| (dg@tao-group.com) | for reliability." --- anonymous computer hardware
+- www.cowlark.com --+ manual

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFDFDxbf9E0noFvlzgRAsXwAJ45VRFcMpXt
HVHSRyGdo1XGYP9kWwCgsaSU
hR14Kjzav3pL/xTaFoPiS98=
=RQHK
-----END PGP SIGNATURE-----
Björn Eiderbäck

2005-08-31, 7:56 am

VisualWorks (http://www.cincomsmalltalk.com/) comes with VMs for the ARM
processor, Windows CE, and SmartPhones. As I understand all, developed
by Georg Heeg www.heeg.de.

However I don't no if 8 MB is enough and I don't know if ARM 6 is
supported.
But maybe you could talk to the developers at Georg Heeg.

Björn

David Given wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> I'm trying to build an embedded device, based on an ARM6 with 8MB RAM. (It's
> actually a repurposed Amstrad eMailer Plus, for those of you in the UK.)
>
> Given that this device is about an order of magnitude more powerful than the
> original Alto workstation, a Smalltalk system should fit on it really
> rather well.
>
> The only problem is finding a Smalltalk engine to actually run on it. I have
> no idea where to find the Alto microcode, and it's probably useless to me
> anyway; my best bet would be to recompile an existing engine in C. However,
> practically all the Smalltalk engines I can find are far too heavyweight
> for my purposes. Squeak is vast, and very difficult to manage; GNU
> Smalltalk is better, but still assumes it's running on a device with an OS;
> the best I can find is Little Smalltalk, which is sufficiently far from the
> S-80 standard that actually running software on it would be hard. Also, I
> don't think it would scale *up* far enough to be useful.
>
> What I want is a engine that will run in a single thread, with no (or very
> little) outside interaction, and just churn through bytecodes. Can anyone
> suggest anything?
>
> - --
> +- David Given --McQ-+ "A character is considered to be a letter if and
> | dg@cowlark.com | only if it is a letter or digit (§20.5.16) but is
> | (dg@tao-group.com) | not a digit (§20.5.14)." --- SMSDN Java
> +- www.cowlark.com --+ documentation
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.1 (GNU/Linux)
>
> iD8DBQFDDz1Jf9E0noFvlzgRAmEFAJ4+ZjXB4WmF
T2XbQBq5yJD6XxZvQgCgqFaU
> z3w/5UkD/RQlZ1nQQNhIKcs=
> =EHV8
> -----END PGP SIGNATURE-----

Jecel

2005-08-31, 6:59 pm

David,

> Off-line I've had suggested to me that I look at Susie
> (http://susie.dargos.com/), which is a PDST derivative;
> it looks quite promising.
>
> Is there a Smalltalk-80-like class library available for
> LST, by any chance? I'm quite attracted to it simply
> *because* of its small size and simplicity.


Wouldn't Susie be it? PDST is forked from Little Smalltalk 3 so it
seems to be that Susie is the closest thing to a Smalltalk-80 library
for LST that is going on right now.

A friend was developing some neat stuff on LST 4.5 so that is the
version I have looked at more closely. He added a socket interface and
a crude remote GUI via any web browser. He has allowed me to make it
available online even though it is very incomplete:

http://www.merlintec.com/download/lst4.5.tar.gz

As for Resilient/OOVM it is a very tiny commercial Smalltalk for
embedded applications. Development uses a remote GUI via Eclipse while
the code runs on the target machine. It is supposed to fit in 128KB.
The best way to learn about it is from one of the Smalltalk Solutions
or ESUG presentations:

http://www.whysmalltalk.com/Smallta...004/pdf/Bak.pdf
http://wiki.eranova.si/esug/OOVM

-- Jecel

jarober@gmail.com

2005-09-01, 6:59 pm

8 MB is likely not enough memory - I'd call 32 MB (16 if you really
work at it) a practical minimum for VW

Bj=F6rn Eiderb=E4ck wrote:[color=darkred]
> VisualWorks (http://www.cincomsmalltalk.com/) comes with VMs for the ARM
> processor, Windows CE, and SmartPhones. As I understand all, developed
> by Georg Heeg www.heeg.de.
>
> However I don't no if 8 MB is enough and I don't know if ARM 6 is
> supported.
> But maybe you could talk to the developers at Georg Heeg.
>
> Bj=F6rn
>
> David Given wrote:
(It's[color=darkred]
n the[color=darkred]
have[color=darkred]
me[color=darkred]
ver,[color=darkred]
OS;[color=darkred]
the[color=darkred]
I[color=darkred]
ery[color=darkred]
ne[color=darkred]
is[color=darkred]

Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2008 codecomments.com