[Cuis-dev] Creating a stable distribution to support application development

Juan Vuletich juan at jvuletich.org
Sat Aug 7 12:30:51 PDT 2021


Hi David,

On 8/7/2021 8:25 AM, David Faitelson via Cuis-dev wrote:
> Dear all,
>
> First I would like to say a big big thank you for the amazing work you 
> put into Cuis. I think it is one of the best development platforms I 
> had the pleasure of working with (it's closest competitor being only 
> the original Smalltalk-80 environment 🙂).

Thanks! It is nice and encouraging to know this.

> To quote C.A.R Hoare, "Here is a language so far ahead of its time, 
> that it was not only an improvement on its predecessors, but also on 
> nearly all its successors."
>
> In the last few years I have developed several non trivial 
> applications on top of Cuis and Pharo: A parser generator and IDE, an 
> educational environment for studying Turing machines, a compiler and 
> IDE for a parallel programming language for Arduino boards, an 
> educational math game, and others.

Please consider publishing your projects too! They sound very 
interesting. You can host them in the Cuis-Smalltalk GitHub 
organization, on your separate GitHub repos, or on any other code 
repository server.

> So my interest in Cuis is more as a development platform. And I think 
> that ultimately this is what we all want. That more and more people 
> will use Cuis to develop their systems.
>
> However, at the moment (correct me if I'm wrong), there is no stable 
> distribution that one can base their application development on. I can 
> clone the latest repository and packages, and freeze a snapshot, but 
> once development moves on I cannot simply update my system to the 
> latest version, because bug fixes, new features, and incompatible 
> changes are mixed in the same development stream.

That is true. Whether it is a good or a bad thing is a matter of 
personal preference.

For me, the best option is to keep own development in package files, and 
from time to time, to load them in a fresh updated Cuis image, and run 
tests. If something breaks, parallel debugging with the previous working 
system should quickly point to the problem. The method annotation will 
include the numbered change set that modified the code, and usually 
studying the change set in the previous working system will help finding 
out the modifications needed in own code.

But you might prefer avoiding the update altogether, and that's ok too.

> What I think would be very helpful is to have a stable distribution of 
> the core and associated packages that would only change to fix bugs 
> without affecting the interfaces.

Sounds like a reasonable option.

But please don't call it "Stable". Up to 2016, we used to maintain 
https://github.com/Cuis-Smalltalk/Cuis-Smalltalk , calling it "Stable 
Releases". The problem was that most newcomers tried that instead of 
Cuis-Smalltalk-Dev, and therefore used a very outdated system. 
Eventually, I emptied the repo and marked it for deletion.

As someone else in this thread said, I think "LTS" or "Long Term 
Support" is a much better name. See 
https://en.wikipedia.org/wiki/Long-term_support . It makes clear that 
you are trading new features and improvements for stability.

> I am more than willing to contribute my time to develop this concept, 
> and I have a few ideas about how to do this, but I hope that I can 
> find other people that think this is important and are interested in 
> cooperating on this.
>
> What do you think? is this worthwhile? what would be a good way to 
> proceed?

I think it is a good idea, if there are people willing to maintain it. I 
won't be spending much time working on it, but I'm willing to, for 
example, handle version numbers or tags in main Cuis repo in a 
meaningful and coordinated way. I'm also willing to help maintainers 
understand any change that gives trouble.

> Cheers,
> David
>
> Dr. David Faitelson
>
> Senior Lecturer
>
> |Office: +972-3-7688782|Mobile: +972-52-6568896
>
> MivtzaKadesh St., Tel-Aviv 38
>
> www.afeka.ac.il <http://www.afeka.ac.il/>
>
>

Cheers,

-- 
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

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cuis.st/mailman/archives/cuis-dev/attachments/20210807/4ea5b65b/attachment-0001.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 16213 bytes
Desc: not available
URL: <http://lists.cuis.st/mailman/archives/cuis-dev/attachments/20210807/4ea5b65b/attachment-0001.png>


More information about the Cuis-dev mailing list