2010/10/8 Igor Stasenko <siguctua@gmail.com>:
I recalled one detail:
VW Xtreams are composable from the beginning, its a core stream feature. Not like ours, which require wrappers, which i added (and thus a lot of clutter on proxying message sends).
:)
I still fail to see the difference. Squeak_XTream are composable from the beginning, ReadXtream all have a source, WriteXtream all have a destination, and most of the subclasses fill those ivars with another XTream. VW_XTream.ReadStream>> on: aSource source := aSource Squeak_Xtream.ReadXtream>>source: anObject "Set the source of this stream" source := anObject Or is it just a question of naming ? I adopted #source:, simply because #on: is harder to trace (too many implementors). Maybe the difference is just a convenient wrapping message or two missing in Squeak_XTream. The wrapper class you added are indeed unecessary in both Squeak_XTream and VW_Xtream. I should have given more feedback to you. If you want to look at differences between the two implementation, rather look at VW_Xtream.Buffer and subclasses. Also look at use of Exception handling in VW_Xtream (users of Incomplete). Don't look number of classes & methods, I obviously don't scale ;) Having only nights and week-ends left for programming, I just don't want to compete ;) Nicolas
-- Best regards, Igor Stasenko AKA sig.
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project