(2003/5/20)
A small HTML outputter patch for / (slash) included category names. Not so common. But Seaside uses the character. See the example.

(2002/12/21)
Dandelion0.5beta1 is now available as Dandelion.sar for SqueakMap. Install instantly and enjoy the power of the Dandelion!

(2002/04/13)Dandelion0.5beta1. Partial XMI support. You can now generate XMI UML files by Dandelion. Analyze your project
and see it with the various case tools which support XMI (MagicDraw UML,
Argo UML, etc)! Here is the MagicDraw sample screenshot.

(2001/05/24)
I put Dandelion 0.4final3. It has a minor code polishing on PetalElement (for portability). Dandelion0.4
now could run even in Squeak2.7. Thanks Mr. Mark Taylor for suggesting
that.

(2001/04/13)
Dandelion 0.4final could not be loaded in Squeak3.0 image. Actually, it
had a very minor bug in pal outputter . (The bug was about block variable
- Squeak formatter seemed to insert an evil code).
The bug was fixed. Please use Dandelion 0.4final2.
Thanks Mr. Yutaka Kamite for reporting that.

(2000/12/3)
Dandelion project is stopped and going away? - NO!
Actually, a pretty good Rose Petal outputter is emerging. Current snapshot is here. You will see the formal Dandelion 0.4 release at the beginning of the
next year!

(2000/01/23)BadNews: I noticed that patch2 had a wrong expression; "Smalltalk removeClassNamed:
#DlPortableFilePath". Now fixed... Sorry.

GoodNews: I confirmed that Dandelion 0.3 will run on Mac Squeak 2.7. Some people
reported me Dandelion did not run on Mac Squeak 2.4. The problem seemed
to be in VM.. Anyway, It is fixed.
And also, I announce that Dandelion 0.4 is just around the corner. Please
stay tuned.

(1999/07/03)
I put explanatory format SMIX for Smalltalk code interchange. . This is a tiny step toward the XMI support.

(1999/07/01)
I decided not to implement Rose model file outputter any more. Many case
vendors' move toward XMI is very, very rapid. So, I will implement a XMI (based on UML DTD) outputter. I think the translation from XMI to other proprietary format such as
Rose model file is easy by using some XSLT utilities.

Introduction

What is Dandelion?

Dandelion is a generic Smalltalk code analysis/output framework. You can
analyze your code and output the information in various formats (currently
HTML, SMIX, Petal, XMI).

Dandelion looks like a "doclet" in Smalltalk. And the impression is 80% right. However, I believe Dandelion has more flexibility. You can customize not only outputting format, but also analysis policy(what/how
code elements will be analyzed) and analyzed information storage(how the
analysis information is stored).

Why the system is called Dandelion?

The first motivation that made me develop this system was " to make a grass-root Rose/Smalltalk". Actually I once developed Rose/Smalltalk Japanese version in 1996. The
tool supported round trip developing process. Developers model application
systems in Rose(at that time UML was before its birth, so mainly in Booch
Method) and generate Smalltalk st-files(for VisualWorks) - This is called "forward engineering". Then you file-in skeleton
st-files and substantiate and change them. The changed code information
could be merged into the original model by using Smalltalk code analysis
tool - This is called "reverse engineering". Round trip development
would be possible only by using both forward engineering and reverse engineering.
As you know, round trip process is very productive, because you can develop
your system incrementally. Model a little, implement a little, and test
a little - that leads to more bug-free reusable systems. Developers can
easily repeat this cycle in every development phase, because the main interest
is always "objects". This round trip process makes the best use
of the main feature of OOA/OOD/OOP - the modeling traceability.

As an OO developer, now I always use Unified Modeling Language in real-world
projects. I believe a lot of Smalltalkers would like to use a state-of-the-art
round trip engineering tool which supports UML. Unfortunately, Rose/Smalltalk
became obscure and UML version of Rose/Smalltalk is not released from Rational Software.VisualWorks/RoseLink from Cincom is only for VisualWorks and the price of the product is not reasonable
for some developers. (The same could be said about IBM VisualAge Smalltalk UML Designer).

So I decided to make a new, free, highly-custmizable, round-trip engineering tool for Smalltalkers. The system would be called "Dandelion Round-tripper".

However,this is merely a personal project. I am too busy to develop a whole
system. "Dandelion Round-tripper" is to be made of two parts
- forward engineering part and reverse engineering part. As a first trial,
I developed reverse engineering base module - which is now called "Dandelion"

"Dandelion" has no intended relation to Xerox old Smalltalk "D-machines"
(Dorade, Dolphin,Dandelion,Daylight). It is only a coincidence, though
I think those names are quite cool.

To customize AnalysisStrategy:

OTHERS

Requests to Squeak Team!

Squeak needs refactoring of Stream class hierarchy. Many newly implemented
methods are liable to be attached and scattered inconsistently. I avoid
this problem by implementing a wrapper stream class.

Squeak ChangeSet implementation should undergo "big refactorings".
I wrote a ChangeSet introspector, but it was a rather painful task. I think
any code change is represented as "change objects", not arrays
or dictionaries. VW ChangeSet implementation is worth investigating.

Cool SCM. I'll use Monticello!!

Anyway many thanks for the most innovative environment in the planet! Very
productive and lots of fun! I love Squeak!