[Date Prev][Date Next][Thread Prev][Thread Next][Author Index][Date Index][Thread Index]
UdanaxGold2Java translator update and questions
- To: udanax@xxxxxxxxxx
- Subject: UdanaxGold2Java translator update and questions
- From: David G Jones <david_jones@xxxxxxxxxxxxxxxxxx>
- Date: Mon, 01 Aug 2005 19:47:52 -0400
Hi all, for the last few years I have been making the occasional
investigation into Xanadu, and especially the open-source release of
UdanaxGold. This is all roughly documented at http://www.abora.org
along with a few related downloads.
Starting in January, I dusted off my earlier aborted attempt at an
automated UdanaxGold Smalltalk source to Java source code translator.
This is a from-scratch translator, as I've unfortunately never had
access to the C++ translator used by Udanax. After a lot of hacking,
second guessing, and stubbing out code like there was no tomorrow, I
have inched my way from the heady heights (lows...) of about 8500
compilation errors until the generated Java code compiles cleanly. The
Java code, along with supporting (ie hacked up by me out of thin air)
library code, is able to run 18 of the 22 tester classes that came
with the released UdanaxGold source, though as you'll recognize from
one of the following questions, running without an exception is not
necessarily the same as a successful test run.
This progress has led me to the following questions. Any help from the
Udanax guys, or other Xanadu cyber-archaeologists would gratefully be
appreciated.
- Tester traces. For the most part, Tester classes rely on generating
a log of interesting events during their execution, and that is
compared against a log from a previous log to confirm whether the
code is still behaving correctly or not. Basically a regression log
to detect changes against.
Does anyone have any good Tester trace logs that I can compare the
translated Java against?
- Missing classes. Though hundreds of Udanax-Gold Smalltalk classes,
and a few C++ classes were released, there are still a good few
class references in the code that can't be resolved. I have stubbed
out these with my Java work, and implemented a few to get the tests
to run, but some missing classes are really starting to get in my
way. If anyone is interested I can forward the complete list, or you
can check the abora-gold code under the various
org.abora.gold.java.missing packages.
The top missing classes for me at the moment are:
RandomStepper
Urdi, UrdiView, SnarfHandle
If any Udanax guys could untangle these classes from any copyright
hooks, then I would be grateful.
- Was the latest code released? Feedback from Dean Tribble a little
while go on a bug I had found in IntegerRegion:below suggested that
the released UdanaxGold source might not be quite the latest
version.
- UdanaxGold roadmap? Is there any documentation, or recollections, on
what the UdanaxGold team were working on when development stopped, a
roadmap of features to be implemented before the 1.0 release, or a
list of bugs/known issues.
- Startup configuration files? I don't really understand the startup
mechanism at the moment, and have just hacked enough to get some of
the server tests at least spluttering along, but the MainDummy class
suggests there might have been an external Text configuration file
with book strapping thunks encoded within it. At the moment I'm
directly executing WorksIniter and DiskIniter/FakeDisk for the
tests.
- Become behaviour. There are a few new.Become: calls in the code,
with an example extracted below. Is this really a one way become,
together with a class change?
udanax-top.st:9183:OVirtualLoaf methodsFor: 'protected: splay'!
{Int8} actualSplay: region {XnRegion} with: limitRegion {XnRegion unused}
"Expand my partial tree in place. The area in the region must go
into the leftCrum of my substitute, or the splay algorithm will
fail!!"
[...]
(SplitLoaf new.Become: self)
create: region
with: tmp1
with: tmp2
with: hcrum
with: hash
with: info.
"The new SplitLoaf will add itself."
oldSensorCrum removePointer: self]].
Thanks a lot for any help you are able give with these questions. If
this is an appropriate forum I'm sure I can come up with a few more
over time :-)
If you have any other questions feel free to reply, or email me. If
anyone finds themselves in Toronto, Canada and would like to discuss
Abora, UdanaxGold or Xanadu further, get in contact and I'm sure we
can organize a beer.
Cheers
--
David G Jones mailto:david_jones@xxxxxxxxxxxxxxxxxx
http://www.abora.org http://www.night.dircon.co.uk
PGP 0x389707D3/70D4 BBE3 9D88 B307 D8FF 5422 A61C ED70 3897 07D3