[Cuis] differences between Cuis and Squeak and Pharo

Davide Della Casa davidedc at gmail.com
Wed Aug 20 09:15:53 CDT 2014


Hi,

I’m working my way through Cuis code…

I start to see some patterns emerging, and it’s clear that design philosophy is minimal and "clean".

I’ve read the discussions around the class count being kept to a minimum compared to Squeak and Pharo, and the Morphic 3.0 approach being about "multi-scale" and best-of-class anti-aliasing solutions, and the philosophy of keeping the core to a minimum.

I’m wondering whether there is a more detailed summary of what has been taken out and refactored and re-architected in respect to Squeak and Pharo?

And I mention this because it’s the kind of thing that is difficult to do for a newbie like me, cause one would need to have some in-depth knowledge of Squeak and Pharo and Cuis, and yet it would be really cool to have this map and go “ah I see, this is available just like in the Squeak examples I’ve seen but I need to plug it from a package in because the core can do without it…, and look this part is so much cleaner with two classes I can do what I needed to do with five”. Also this could be a really useful map for people who would like to know how to migrate code/packages from one system to Cuis, so it would be useful well beyond newbies actually…

This is what I know so far in terms of comparisons by reading online:
  - core class count (much lower than other two systems, core kept to a minimum)
  - morphic 3.0 is scale-agnostic
  - rotation of morphs in Cuis is not part of core (is it part of another package?)
  - line morphs in Cuis are plug-in
  - layouts in Cuis are minimal (can’t make comparison here, don’t know enough about the other systems but I know that Squeak needs a number of other classes)
  - list of main Cuis packages and repos

I wonder whether there are more deltas that can be highlighted… some come to mind but ideally one would want to have a larger list… for example I’d love to know:
  - approach to naming, are there major classes/methods that are the same but follow a different naming convention?
  - are all the main morphs still there in the same hierarchy structure? What are the differences?
  - is the event system and the re-paint code similar?
  - traits being used or encouraged?
  - text/fonts, are those the same approach?
  - main tools in the vanilla environment: different/same?
  - menus structuring: different/how?
  - other parts that have been taken out completely or put in a package?

Cheers,
Davide
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://jvuletich.org/pipermail/cuis_jvuletich.org/attachments/20140820/c249bedf/attachment-0003.html>


More information about the Cuis mailing list