[Squeakfoundation]Re: Flow integration

Colin Putney squeakfoundation@lists.squeakfoundation.org
Sat, 23 Nov 2002 14:16:10 -0800


On Thursday, November 21, 2002, at 11:01  PM, Craig Latta wrote:

>
> Hi Colin--
>
>> This process would be appropriate for a monolithic image, but it
>> doesn't fly very well in a modular universe.
>
> 	Normally I'd agree, but since virtually all the applications we're
> talking about recently *were* in a monolithic image (we're still busy
> taking them all out :), I think it's much less work right now to 
> proceed
> the "monolithic" way.

These are the networking packages that I've used for my day-to-day work:

Comanche
Mysql drivers
RPC-XML
rST
VNCServer

None of these have ever been in the image. I'm sure there are quite a 
few others out there as well.

> For other applications which were never part of
> the release image, we can adapt just by making sure they're loaded,
> installing Flow, and fixing what breaks. I effectively did that for
> everything in 3.2final, and it was easy.

Sure, but once I've done that, then what? Then I've got to maintain two 
code bases. I won't be able to convert all these packages to use flow 
in an afternoon. Most of them were written by somebody else, (as was 
flow) so debugging them will take time as I figure out what is supposed 
to happen as well as what actually is happening.

The other way would be to convert all these packages to use OldSocket 
and friends and make sure I have always have flow installed in all my 
images. Then I can port the packages one at a time, and still be able 
to use the as-yet-unconverted packages at the same time. But if there 
are any show-stoppers, I'm going to have a fair amount of work to move 
back to the old socket code. And in the meantime I'm dependent on flow, 
which complicates my image building process, even though I'm not using 
it yet.

Don't get me wrong, I'm a big fan of ontological purity. But come on, 
you're asking me to do a lot of work and take a big risk to preserve 
the esthetics of your class names. How about a compromise? Just stick 
FL at the beginning of each flow class to create a poor man's name 
space. Then flow can happily along side the old network classes and we 
can use the packaging system to sort out these problems.

Cheers,

Colin