what I'm working on (was "Smalltalk and CORBA")

Pennell's pennell at tiac.net
Thu Dec 10 13:40:10 UTC 1998


Craig - As my teenage daughter would say - WOOHOO !!  
Thats quite a list.

I've been feeling kind of guilty for spending too much time lurking and
not enough time writing code.  Maybe if I publish my to-do list, I'll find 
some time over the holidays to make some real progress:

I started a tgen port a couple of months ago.  I ported it to Visual Smalltalk
a couple of years ago.  I can't find it anymore - too many intervening computers.
Tgen wants VisualWorks exceptions.  I have plugged in one of the avaliable
VW style packages.  I got distracted learning about the shortcomings of all of 
the current packages.  I haven't gotten around to determining if this is an issue
for tgen.  In any case - it would be nice to settle on an exception package that
has unwind support.  Tgen uses several, very large, literal array initializations that
run afoul of the #(nil true false) problems earlier identified on this list.  I've managed
a fairly painless solution to this.  I got started on porting the GUI component.   This
appears to be largely mechanical.  I'd try to finish this weekend, but the family seems
to think that we should get a tree and decorate...I have a week of vacation coming
between Christmas and New Years.  This is on the top of my list.

I'm also in the middle of adding UDP support.  The Unix VM has full support.  I have
ported and refactored some very old Smalltalk code from Ian that provides functional
support on Unix (at least FreeBSD).  I've got all the VM changes coded for Win32, and
am in the middle of debugging.

I have VM mods for Unix for supporting traditional listen(), accept() on Unix.  
I did this to fix a race condition that occurs when multiple connection
requests arrive rapidly.   Andreas has a copy for review, but judging from the 2.3Beta, it
looks like his hands are very full. [hows the Visa app coming?]  I would like to rewrite this
with named primitives.  Having seen Craig's post, I'm interested in his alternative networking
implementation.

So why am I working on tgen and udp?  I would like to write an SNMP MIB compiler with
tgen (or some other parser generator).  I need UDP to implement the SNMP protocol.  I have
most of the ASN.1 support done.  I also have most of the MIB database (in image version).
I've taken a quick look at MinneStore for external MIB database.  It needs exceptions and
finalization [thanks Andreas].  With exceptions available, this port shouldn't take long at all.
The author has accounted for multi-platform support in the design and currently supports several
platforms.

I'm also interested in writing an Internet Telephony application in Squeak.  
Voice over IP uses the H.323 protocol suite.  UDP is used for moving the voice.
ASN.1 is used in the signalling protocols.  Voice compression can select from a long menu
of DSP oriented algorithms.

-david





More information about the Squeak-dev mailing list