[Cuis-dev] Converting Tonel packages

Juan Vuletich juan at jvuletich.org
Thu Aug 29 13:21:41 PDT 2019


Philip, please help us all keep the tone at a friendly and welcoming 
level. There's no need or reason to upset Thierry or make anyone 
uncomfortable.

Let's try to make our best to understand other people opinions, and 
their thinking behind them, and argue in good manners.

Besides, folks, let me say that Thierry or anyone else is welcome to 
express any opinions here. If anyone actually wants to sell the Pharo 
approach to anything, we'd listen, think, and discuss. Let's not forget 
that we share a lot. Pharo, Squeak and Cuis share a common ancestry 
(Smalltalk-80 and earlier Squeak versions), and we use the same VMs. 
After Pharo and Cuis forked, fortunately, we still have been able to 
bring both ideas and code back and forth between the projects. Most Cuis 
contributors are also contributors to Squeak and Pharo. For instance, 
both Nicolas and me have contributed dialect specific code to all three 
projects.

Let's keep it this way.

Thanks,

-- 
Juan Vuletich
www.cuis-smalltalk.org
https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev
https://github.com/jvuletich
https://www.linkedin.com/in/juan-vuletich-75611b3
@JuanVuletich


On 8/29/2019 4:12 PM, Nicolas Cellier via Cuis-dev wrote:
> Woah, Thierry gave insight on the reasons that have driven the design 
> decisions, and his view on the database nature of version control, he 
> his not trying to sell Pharo solutions at all, but instead is trying 
> to step back and give another perspective, unless I missunderstood...
>
> Le jeu. 29 août 2019 à 14:33, Philip Bernhart via Cuis-dev 
> <cuis-dev at lists.cuis.st <mailto:cuis-dev at lists.cuis.st>> a écrit :
>
>     Hi Thierry,
>
>     I wasn't interested into your comment or "insights" into filetree
>     or tonel. As I wrote in the beginning of this thread, I despise these
>     formats and want to convert them into cuis packages which are more
>     sane to me. And I despise these on the grounds of incompatibility
>     and complexity.
>
>     All the remaining explanations are not adding anything new to the
>     discussion also they make me mad at you for treating me as someone
>     who doesn't understand these formats.
>
>     I hope if Hernan had a civil discussion with Dale, he could send
>     me a private mail as I'm curious of how it went, if he wants that.
>
>     Any further discussion in this thread is probabily just going to be
>     bikeshedding between the pharo community and the cuis community,
>     which is not really interesting.
>
>
>     Thanks for your time,
>     Philip
>
>
>     Thierry Goubier via Cuis-dev <cuis-dev at lists.cuis.st
>     <mailto:cuis-dev at lists.cuis.st>> writes:
>
>     > Hi Philip,
>     >
>     > as someone who has worked a bit on filetree, I'd say there are no
>     > philosophical differences. Just implementation compromises with
>     the way
>     > Smalltalk has to deal with the world outside of the image for
>     storing code.
>     >
>     > For example, Tonel has been introduced to solve issues with
>     filetree: the
>     > fact filetree generates too many files creating performance
>     issues with the
>     > host filesystem implementation (and issues with the poor support
>     of Windows
>     > long paths in the virtual machines), and losing space because
>     the files are
>     > small (and that current storage tech has solved its performance
>     issues with
>     > large files by forcing a large minimum allocation size).
>     Filetree is itself
>     > a compromise to have a different fit with current version management
>     > systems (git, for example). As I said, just implementation
>     compromises(*),
>     > no philosophy behind that.
>     >
>     > If there is a philosophical difference, I would say that there
>     is only one:
>     > declarative or imperative storage format. Traditiional Smalltalk is
>     > imperative... you don't load code, you execute a program. Newer
>     formats
>     > like filetree or tonel, or probably the database-oriented ones
>     (VW, Magma)
>     > are more declarative in nature (but have still imperative parts).
>     >
>     > The picture grows more complex if you consider what are version
>     control
>     > systems. They are in fact databases (even git), so a more
>     natural fit for
>     > Smalltalk would be an object persistency layer used with code
>     objects (VW,
>     > again. Gemstone?).
>     >
>     > To give you an idea of how that looks, for all formats:
>     >
>     > In Smalltalk, you have code as an object graph (class,
>     CompiledMethod
>     > instances, etc...) with an optimisation to store the text (the
>     sources and
>     > changes files). When you save, you iterate over that object
>     graph and
>     > convert it to a file / multiple files. Then you interact with
>     your version
>     > control system to record the files (either automatically or
>     manually). Then
>     > your version control system store your changes into a database,
>     as a set of
>     > objects...
>     >
>     > This also explains why you have those Smalltalk to database for
>     storing
>     > code implementations: avoid that file layer that is extremely
>     annoying.
>     >
>     > Thierry
>     >
>     > (*) For example, the last version of GitFileTree, a git-enabled
>     filetree,
>     > never manipulates any files in Smalltalk. Git does file
>     operations but only
>     > as a kind of user interface layer, to allow users to solve
>     conflicts.
>     >
>     > Le jeu. 29 août 2019 à 10:26, Philip Bernhart via Cuis-dev <
>     > cuis-dev at lists.cuis.st <mailto:cuis-dev at lists.cuis.st>> a écrit :
>     >
>     >> Hi Hernan,
>     >>
>     >> could you find out the philosophical differences regarding
>     >> the "new" package formats like filetree or tonel?
>     >>
>     >> If yes, what are they? I'm curious why thinks are supposed to
>     >> be better the way pharo and visual works (?) went.
>     >>
>     >>
>     >> Thanks for your time,
>     >> Philip
>     >>
>     >> Hernan Wilkinson via Cuis-dev <cuis-dev at lists.cuis.st
>     <mailto:cuis-dev at lists.cuis.st>> writes:
>     >>
>     >> > well well well, even I do admire you and so on, I would not
>     call it a
>     >> > date 😜😜
>     >> > (we are starting to have fun!!)
>     >> >
>     >> > On Wed, Jul 31, 2019 at 4:44 PM Dale Henrichs via Cuis-dev <
>     >> > cuis-dev at lists.cuis.st <mailto:cuis-dev at lists.cuis.st>> wrote:
>     >> >
>     >> >> Hernan,
>     >> >>
>     >> >> Excellent! It's a date then:)
>     >> >>
>     >> >> Dale
>     >> >> On 7/31/19 12:32 PM, Hernan Wilkinson via Cuis-dev wrote:
>     >> --
>     >> Cuis-dev mailing list
>     >> Cuis-dev at lists.cuis.st <mailto:Cuis-dev at lists.cuis.st>
>     >> https://lists.cuis.st/mailman/listinfo/cuis-dev
>     >>
>     > --
>     > Cuis-dev mailing list
>     > Cuis-dev at lists.cuis.st <mailto:Cuis-dev at lists.cuis.st>
>     > https://lists.cuis.st/mailman/listinfo/cuis-dev
>     -- 
>     Cuis-dev mailing list
>     Cuis-dev at lists.cuis.st <mailto:Cuis-dev at lists.cuis.st>
>     https://lists.cuis.st/mailman/listinfo/cuis-dev
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cuis.st/mailman/archives/cuis-dev/attachments/20190829/4f4f16ec/attachment-0001.htm>


More information about the Cuis-dev mailing list