On 11/6/14 22:33, kilon alios wrote:
well if you keep the overall design of morphic or even improve it. I
have no complain and you have my full support. I thought that you
wanted to remove Morphic and make Spec the standard design for Pharo.
I know what neither Athens or Roassal is a replacement for Morphic.
you confuse layers.
Athens is an API to draw on a screen.
Morphic is a graphics framework.
Spec is a ui builder to compose widgets out of smaller widgets.
I remember once I took a look at TreeMorph and I was shaking my head
with sadness, it was really bad :D So yes Morphic is very messy.
TreeMorph is just a widget that grows organically.
I also don't claim, just for the record, that the above libraries are
not very useful and that I am not happy that are around and I can use
them. I really appreciate people hard work and I am definitely try to
learn as much as my limited free time allows me to.
Maybe if you sit down and build a roadmap on the direction you want to
go as a community on the GUI front this will help people contribute as
it will set a clear goal for them.
On Wed, Jun 11, 2014 at 11:25 PM, Esteban Lorenzano
<[email protected] <mailto:[email protected]>> wrote:
On 11 Jun 2014, at 17:15, kilon alios <[email protected]
<mailto:[email protected]>> wrote:
Yes personally I really like the overall design of a morph
embedding nice and easily inside another morph and everything
made up of morphs. I like the idea of hand , world , etc.
I try to like Spec, but it looks to me quite confusing, I tried
to follow the tutorial but I cant understand its design and why
so many methods are needed to setup a spec widget. I also dislike
the use or pragmas. I will continue learning it but I don't
prefer it over Morphic for now. AFAIK apart from Spec and
Morphic there is no other choice.
Spec is not an alternative to Morphic, is a superset (a way to
nicely build widget components).
So apart from *Morphic*, you do not have any other choice :)
I also have hard time understanding Roassal and Athens. With
Morphic its hard at times to figure out whats going on but at
least it took very little time to understand the overall design.
Same here. None of them are replacements… is a framework for
visualisations (in the case of Roassal) and a framework for
drawing (in case of Athens). One is on top of Morphic and the
other is below it (you can do morphs that are drawn with Athens).
I don't have a problem with Pharo abandoning Morphic. Afterally
you all use Pharo far more than I do. I will continue learning
Spec, Roassal and Athens. But for me Morphic is the most
beautiful Graphics API I have ever worked with.
We are not moving out from Morphic any time soon.
Also, moving from an implementation of Morphic does not means we
are going to refuse his general design or all the cool experience
we accumulated in the time.
Think on morphic and block like with Battlestar Galactica from
1978 and 2003: Same general design, but a complete “re-imagined”
taking with us all we learned in the mean time :)
On Wed, Jun 11, 2014 at 10:55 PM, Esteban Lorenzano
<[email protected] <mailto:[email protected]>> wrote:
On 11 Jun 2014, at 16:39, kilon alios <[email protected]
<mailto:[email protected]>> wrote:
excellent news. I really believe in Morphic and I really
like its general design. If you we can clean the mud I am
sure we will discover quite a diamond underneath. Thanks.
which general design? the pattern in which is based? that’s
not enough to keep it :)
Sorry but there is no easy/efficient way to clean it.
The only way to clean Morphic is to reimplement it.
Clean it is just too much work… and too many design decisions
where made that time and patches made them obsolete or not
correct.
Not to talk about the mix of concepts (bah, the no existence
of separation between them).
Block is not a clean. Is a revamp.
No offence intended to Morphic: no matter how good was at the
beginning, *every* system evolves up to a point the effort
required to maintain it is superior to the effort required to
reimplement it (with all the experience as a superior step).
(yeah, yeah… a lot of people will disagree. But time has
proven me right… and will continue doing it :P)
Esteban
On Wed, Jun 11, 2014 at 10:25 PM, François Stephany
<[email protected]
<mailto:[email protected]>> wrote:
\o/
On Wed, Jun 11, 2014 at 4:23 PM, Camille Teruel
<[email protected]
<mailto:[email protected]>> wrote:
On 11 juin 2014, at 15:31, François Stephany
<[email protected]
<mailto:[email protected]>> wrote:
What is bloc ?
I've searched in the pharo-dev list but couldn't
find it :/
A Morphic clean/revamp lead by Alain and Stef.
On Wed, Jun 11, 2014 at 2:26 PM, stepharo
<[email protected] <mailto:[email protected]>> wrote:
looks so exciting...
From: Alain Plantec
<[email protected]
<mailto:[email protected]>>
Subject: Bloc news
Date: 11 Jun 2014 14:10:29 GMT+2
To: Stéphane Ducasse <[email protected]
<mailto:[email protected]>>
Cc: Alain Plantec <[email protected]
<mailto:[email protected]>>
Name: Bloc-Core-AlainPlantec.15
Author: AlainPlantec
Time: 11 June 2014, 2:07:16.813171 pm
UUID: d58ae82e-b5dd-41d9-bc31-a48c3e9e5cf1
Ancestors: Bloc-Core-AlainPlantec.14
- BlMorphs manage their submorphs with local
coordinate.
- Drawing and drag&drop has been adapted to
local coordinate
- Consequence: TransformationMorph should not
be useful anymore because each morph has its
own transform (not only TransformationMorph).
Each morph uses its own transform to declare
changed portions of its bounds and to draw its
submorphs.
- The world is no more a special morph:
- the hand is owned by the space
- the canvas and the display/redisplay of
morphs are space responsibilities.
This open the door to several worlds per space.
Now the current global redrawing mechanism
efficiency is not obvious.
Next actions:
- try to localize as much as possible the
redrawing of morphs,
- dig several Worlds for a space
- start to comment and write a separate
documentation with the help of Stephane :)