[Cuis-dev] Is anyone working on Morphic-free Cuis?
Juan Vuletich
JuanVuletich at zoho.com
Wed Apr 27 11:50:43 PDT 2022
Hi Stephen,
> Thank you friends, for your responses.
>
> I’ve started porting Siren to Cuis, and there’s quite a bit of work to
> do before I get to the GUI (schedulers, audio/MIDI I/O, etc.).
>
> stp
>
> --
>
> Stephen Travis Pope Ojai, California, USA
> http://HeavenEverywhere.comhttp://FASTLabInc.com
> https://vimeo.com/user19434036/videos
> http://heaveneverywhere.com/Reflections
>
> --
>
This is just great! Count on the Cuis community for any help we can provide.
Cheers,
>
>> On Apr 22, 2022, at 3:56 AM, Hilaire Fernandes via Cuis-dev
>> <cuis-dev at lists.cuis.st <mailto:cuis-dev at lists.cuis.st>> wrote:
>>
>> Hi Stephen!
>>
>> Le 21/04/2022 à 20:00, stephen--- via Cuis-dev a écrit :
>>> Yeah, I’m still tracking Cuis, and loving the lack of bloat.
>>
>> Indeed. Cuis is very agile to improve itself while remaining an
>> understandable system for an human being. This is the reason I am
>> porting DrGeo from Pharo to Cuis, I am close to the end of the effort.
>>
>>> My issues with Morphic are that it’s not MVC and it’s not well-designed.
>>
>> Morphic on Cuis (aka Morphic 3) is a redesign from the basement to
>> the attic. It is a better design than the original Morphic 2 system
>> on Squeak. Two salient aspects: its coordinate system is relative to
>> each morph, its classes are simpler. I did not even mentioned
>> VectorGrpahic, okay I just did.
>>
>>> First, views and controllers are merged, which hurts reusability of
>>> components and hinders the development of new interaction methods
>>> like multi-touch screens or voice input.
>>
>> Oh, but you can move out the controllers from the Morphic view. This
>> is what I am doing. I am not an expert on MVC so please correct me if
>> I miss some key point. In DrGeo the controls of the mathematic items
>> are done outside of their respective Morphic view.
>>
>> Regarding the more traditional GUI part, we are using pluggable
>> Morphs composed with the Cuis' Layout system. It is interestingly
>> reusable. I am also interested in the new interaction methods you
>> mentioned.
>>
>> I don't see blocking point preventing you from using Morph with a MVC
>> design.
>>
>>>
>>> Second, the base classes (Morph et al.) are pretty heavy-weight;
>>> Morph has 6 instance variables, and you’re up to 10 or more by the
>>
>> Cuis is very agile and, if I understand correctly the policy of its
>> community, is prone to deep refactoring if it improves Cuis
>> simplicity and efficiency. And these are not empty words, a few weeks
>> ago, Cuis Morph system has been through an important design in the
>> classes hierarchy. The classes were not exactly shortened but split,
>> joined, renamed for a better understanding
>> (https://lists.cuis.st/mailman/archives/cuis-dev/2021-December/004649.html).
>>
>> Your need for smaller Morph, if you decided to jump in Cuis to port
>> your software, will be also an opportunity for the Cuis community to
>> improve the system in this particular area.
>>
>> Regarding your comment, there are 5 instance variables in Morph
>> 'owner submorphs properties id privateDisplayBounds'. Next, this is
>> all you need for the view of your music notation system. You see, we
>> had these discussion several months ago for DrGeo as I also want the
>> simpler Morph as possible. In DrGeo the view of the mathematics
>> models (point, segment, etc.) are almost direct subclasses of Morph:
>>
>> <Capture%20d%E2%80%99%C3%A9cran%20de%202022-04-22%2012-37-36.png>
>>
>>
>> Now while observing the Morph class, there is a lot of stuff in there
>> I don't need for the DrGeo math morph. It should be doable to have a
>> KernelMorph with only the instance variables 'owner id
>> privateDisplayBounds' and the reduced ad-hoc behaviors. That is
>> something that may interest you too.
>>
>>
>>> time you get to the interesting classes. This makes it hell on the
>>> garbage collector for complex UIs (like music notation) where you
>>> might have thousands of display objects on the screen, and want to
>>> scroll or page quickly.
>>
>> As a matter of fact, you can observe this video until the end. There
>> are 10'000 points (10'000 Morph drawings, each of two lines) and the
>> canvas is zoomed/unzoomed, an object is dragged around.
>>
>> https://twitter.com/GNUDrGeo/status/1515365208428007426
>>
>> Your software and mine are sharing the same concept of canvas where
>> you are composing music notation and I math objects.
>>
>> Nevertheless, porting to any system, will be a substantial effort.
>> But I guess you know that.
>>
>> If you decided to jump in and use Morph, I will be happy to help you,
>> in tips and code.
>>
>> About Brick I don't know yet.
>>
>> Hilaire
>>
>> --
>> GNU Dr. Geo
>> http://drgeo.eu <http://drgeo.eu/>
>> http://blog.drgeo.eu <http://blog.drgeo.eu/>
>> --
>> 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
>
--
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
https://independent.academia.edu/JuanVuletich
https://www.researchgate.net/profile/Juan-Vuletich
https://patents.justia.com/inventor/juan-manuel-vuletich
https://twitter.com/JuanVuletich
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cuis.st/mailman/archives/cuis-dev/attachments/20220427/00ddca33/attachment-0001.htm>
More information about the Cuis-dev
mailing list