Hi Folks,
A few days ago I released SimpleMorphic for Pharo. SimpleMorphic is the Morphic implementation in Cuis. It is much smaller and simpler than the one in Pharo (and in Squeak). Please see http://lists.gforge.inria.fr/pipermail/pharo-project/2010-November/035302.ht... . A link to the code (for Pharo 1.2) is included.
While this release of the code is for Pharo, it shouldn't be a big deal to make it run on Squeak. My hope is that the Pharo community studies it in detail, adopts it, and eventually remove the old Morphic. For Squeak, maybe the same happens. Or perhaps there would be 2 Morphic UIs for Squeak: FullMorphic+Etoys and SimpleMorphic... So, what do you think?
I also sent this comment to the Pharo mail list recently, trying to make clear why SimpleMorphic is useful:
"Size of 4 core classes (Morph, MorphExtension, PasteUpMorph and WorldState) Pharo / Squeak / Cuis totalIvars: 39 / 46 / 26 totalClassVars: 15 / 10 / 5 totalInstMethods: 1170 / 1764 / 663 totalClassMethods: 55 / 71 / 16
Size of the whole Morph hierarchy Pharo / Squeak / Cuis totalClasses: 197 / 331 / 58 totalIvars: 649 / 1063 / 257 totalClassVars: 54 / 138 / 28 totalInstMethods: 6651 / 9186 / 2115 totalClassMethods: 303 / 858 / 127
SimpleMorphic is much smaller. Core classes are simpler and easier to understand, fix and extend. The most important part is that this is not blind removal of unused code. A lot of the functionality has been redesigned to make it simpler, and the removal was done with great care to result in a consistent system. This work started in 2004, so we're talking of about 6 years of careful work. All this means that SimpleMorphic does not support all the features that Pharo or Squeak might support. Please use the browsers and other tools in Cuis to check what it indeed can do.
Talking about complexity, let's take for example, morph layout. This is started with #doLayoutIn: in Pharo and #doLayoutIfNeeded in SimpleMorphic.
In Pharo, this method calls #adjustLayoutBounds: (19), #layout:in: (149), #layoutProportionallyIn: (10), #computeCellArrangement:in:horizontal:target: (87), #computeGlobalCellArrangement:in:horizontal:wrap:spacing: (31), #computeCellSizes:in:horizontal: (30), #computeExtraSpacing:in:horizontal:target: (136), #layoutLeftToRight:in: (91), #layoutTopToBottom:in: (91), #placeCells:in:horizontal:target: (70). The numbers in parenthesis are the sum of the lines of code of the implementors. Total lines of code for layout (taking only these most important methods) is 714. I doubt there are many people who really understand all of this code.
In SimpleMorphic (Cuis), this calls #layoutSubmorphsIn: (10), #applyLayoutFrameIn: (11), #layout:in: (24). Total lines of code is 45. I believe any smalltalker could understand these in just minutes."
Cheers, Juan Vuletich
Juan
Your work is exciting. A work of 6 years! Thank you for making this available and thanks to ESUG for partially sponsoring your work.
I think we should try it out in any case.
Any suggestions how to proceed? There are four change sets -- some of the Pharo specific.
--Hannes
On 11/10/10, Juan Vuletich juan@jvuletich.org wrote:
Hi Folks,
A few days ago I released SimpleMorphic for Pharo. SimpleMorphic is the Morphic implementation in Cuis. It is much smaller and simpler than the one in Pharo (and in Squeak). Please see http://lists.gforge.inria.fr/pipermail/pharo-project/2010-November/035302.ht... . A link to the code (for Pharo 1.2) is included.
While this release of the code is for Pharo, it shouldn't be a big deal to make it run on Squeak. My hope is that the Pharo community studies it in detail, adopts it, and eventually remove the old Morphic. For Squeak, maybe the same happens. Or perhaps there would be 2 Morphic UIs for Squeak: FullMorphic+Etoys and SimpleMorphic... So, what do you think?
I also sent this comment to the Pharo mail list recently, trying to make clear why SimpleMorphic is useful:
"Size of 4 core classes (Morph, MorphExtension, PasteUpMorph and WorldState) Pharo / Squeak / Cuis totalIvars: 39 / 46 / 26 totalClassVars: 15 / 10 / 5 totalInstMethods: 1170 / 1764 / 663 totalClassMethods: 55 / 71 / 16
Size of the whole Morph hierarchy Pharo / Squeak / Cuis totalClasses: 197 / 331 / 58 totalIvars: 649 / 1063 / 257 totalClassVars: 54 / 138 / 28 totalInstMethods: 6651 / 9186 / 2115 totalClassMethods: 303 / 858 / 127
SimpleMorphic is much smaller. Core classes are simpler and easier to understand, fix and extend. The most important part is that this is not blind removal of unused code. A lot of the functionality has been redesigned to make it simpler, and the removal was done with great care to result in a consistent system. This work started in 2004, so we're talking of about 6 years of careful work. All this means that SimpleMorphic does not support all the features that Pharo or Squeak might support. Please use the browsers and other tools in Cuis to check what it indeed can do.
Talking about complexity, let's take for example, morph layout. This is started with #doLayoutIn: in Pharo and #doLayoutIfNeeded in SimpleMorphic.
In Pharo, this method calls #adjustLayoutBounds: (19), #layout:in: (149), #layoutProportionallyIn: (10), #computeCellArrangement:in:horizontal:target: (87), #computeGlobalCellArrangement:in:horizontal:wrap:spacing: (31), #computeCellSizes:in:horizontal: (30), #computeExtraSpacing:in:horizontal:target: (136), #layoutLeftToRight:in: (91), #layoutTopToBottom:in: (91), #placeCells:in:horizontal:target: (70). The numbers in parenthesis are the sum of the lines of code of the implementors. Total lines of code for layout (taking only these most important methods) is 714. I doubt there are many people who really understand all of this code.
In SimpleMorphic (Cuis), this calls #layoutSubmorphsIn: (10), #applyLayoutFrameIn: (11), #layout:in: (24). Total lines of code is 45. I believe any smalltalker could understand these in just minutes."
Cheers, Juan Vuletich
Hannes Hirzel wrote:
Juan
Your work is exciting. A work of 6 years! Thank you for making this available and thanks to ESUG for partially sponsoring your work.
I think we should try it out in any case.
Any suggestions how to proceed? There are four change sets -- some of the Pharo specific.
--Hannes
Hi Hannes,
The first thing to do is to try it. Start PharoCore 1.2, install the 5 change sets in numerical order. After loading them, you can evaluate 'SimpleMorphicUIManager start' to enter SimpleMorphic and 'SimpleMorphicUIManager stop' to return to regular Morphic.
Cheers, Juan Vuletich
On 11/10/10, Juan Vuletich juan@jvuletich.org wrote:
Hannes Hirzel wrote:
Juan
Your work is exciting. A work of 6 years! Thank you for making this available and thanks to ESUG for partially sponsoring your work.
I think we should try it out in any case.
Any suggestions how to proceed? There are four change sets -- some of the Pharo specific.
--Hannes
Hi Hannes,
The first thing to do is to try it. Start PharoCore 1.2, install the 5 change sets in numerical order. After loading them, you can evaluate 'SimpleMorphicUIManager start' to enter SimpleMorphic and 'SimpleMorphicUIManager stop' to return to regular Morphic.
Cheers, Juan Vuletich
Thank you Juan for the answer
There are five change sets
SMx01-PharoEnhAndPreliminaries-jmv.3.cs (47kB) SMx02-PharoEnhAndPreliminariesCoda.1.cs (1kB) SMx03-ExtensionMethodsPart1.3.cs (7kB) SMx04-SimpleMorphic.11.cs (1081kB) SMx05-ExtensionMethodsPart2.7.cs (5kB)
I filed them all in in order though According to http://code.google.com/p/pharo/issues/detail?id=3210 SMx02 is not mentioned.
It worked fine.
An interesting impression to have Pharo have a look and feel like 'Cuis'.
A minor glitch -- if I right click (Windows) and choose 'about this system' the image freezes.
A major thing however is that after some time the VM (Cog) crashed with an out of memory message.
I assume on your end it does not ........
--Hannes
Browser seem works fine, except that annotation panes not working, always showing '-----' in contents.
Sometimes, when dragging a window, is not redraws itself on a new position, causing a visual artifacts.
But in overall, quite impressive. Snappy.
Hi Igor,
Igor Stasenko wrote:
Browser seem works fine, except that annotation panes not working, always showing '-----' in contents.
Sometimes, when dragging a window, is not redraws itself on a new position, causing a visual artifacts.
But in overall, quite impressive. Snappy
I'll work on those issues. Thanks for testing.
Cheers, Juan Vuletich
Hi Hannes,
Hannes Hirzel wrote:
... A minor glitch -- if I right click (Windows) and choose 'about this system' the image freezes.
A major thing however is that after some time the VM (Cog) crashed with an out of memory message.
I need to do better handling of stuff unsupported in SimpleMorphic so it fails reasonably... Will work on that.
Thanks, Juan Vuletich
On 11/10/10 3:46 PM, "Juan Vuletich" juan@jvuletich.org wrote:
Hi Folks,
A few days ago I released SimpleMorphic for Pharo. SimpleMorphic is the Morphic implementation in Cuis. It is much smaller and simpler than the one in Pharo (and in Squeak). Please see http://lists.gforge.inria.fr/pipermail/pharo-project/2010-November/035302.ht... . A link to the code (for Pharo 1.2) is included.
While this release of the code is for Pharo, it shouldn't be a big deal to make it run on Squeak. My hope is that the Pharo community studies it in detail, adopts it, and eventually remove the old Morphic. For Squeak, maybe the same happens. Or perhaps there would be 2 Morphic UIs for Squeak: FullMorphic+Etoys and SimpleMorphic... So, what do you think?
I also sent this comment to the Pharo mail list recently, trying to make clear why SimpleMorphic is useful:
"Size of 4 core classes (Morph, MorphExtension, PasteUpMorph and WorldState) Pharo / Squeak / Cuis totalIvars: 39 / 46 / 26 totalClassVars: 15 / 10 / 5 totalInstMethods: 1170 / 1764 / 663 totalClassMethods: 55 / 71 / 16
Size of the whole Morph hierarchy Pharo / Squeak / Cuis totalClasses: 197 / 331 / 58 totalIvars: 649 / 1063 / 257 totalClassVars: 54 / 138 / 28 totalInstMethods: 6651 / 9186 / 2115 totalClassMethods: 303 / 858 / 127
SimpleMorphic is much smaller. Core classes are simpler and easier to understand, fix and extend. The most important part is that this is not blind removal of unused code. A lot of the functionality has been redesigned to make it simpler, and the removal was done with great care to result in a consistent system. This work started in 2004, so we're talking of about 6 years of careful work. All this means that SimpleMorphic does not support all the features that Pharo or Squeak might support. Please use the browsers and other tools in Cuis to check what it indeed can do.
Talking about complexity, let's take for example, morph layout. This is started with #doLayoutIn: in Pharo and #doLayoutIfNeeded in SimpleMorphic.
In Pharo, this method calls #adjustLayoutBounds: (19), #layout:in: (149), #layoutProportionallyIn: (10), #computeCellArrangement:in:horizontal:target: (87), #computeGlobalCellArrangement:in:horizontal:wrap:spacing: (31), #computeCellSizes:in:horizontal: (30), #computeExtraSpacing:in:horizontal:target: (136), #layoutLeftToRight:in: (91), #layoutTopToBottom:in: (91), #placeCells:in:horizontal:target: (70). The numbers in parenthesis are the sum of the lines of code of the implementors. Total lines of code for layout (taking only these most important methods) is 714. I doubt there are many people who really understand all of this code.
In SimpleMorphic (Cuis), this calls #layoutSubmorphsIn: (10), #applyLayoutFrameIn: (11), #layout:in: (24). Total lines of code is 45. I believe any smalltalker could understand these in just minutes."
Cheers, Juan Vuletich
Excellent as always. When back at home from Smalltalks2010 see if could take it for SqueakLight3/SqueakCore.
By the way, notices about works with Andreas and Pavel for smaller and modular image ?
Edgar
Hi Edgar,
Edgar J. De Cleene wrote:
Excellent as always. When back at home from Smalltalks2010 see if could take it for SqueakLight3/SqueakCore.
Thanks Edgar.
By the way, notices about works with Andreas and Pavel for smaller and modular image ?
Edgar
No from me. Perhaps you'd ask Andreas.
Cheers, Juan Vuletich
On Wed, Nov 10, 2010 at 02:46:54PM -0300, Juan Vuletich wrote:
Hi Folks,
A few days ago I released SimpleMorphic for Pharo. SimpleMorphic is the Morphic implementation in Cuis. It is much smaller and simpler than the one in Pharo (and in Squeak). Please see http://lists.gforge.inria.fr/pipermail/pharo-project/2010-November/035302.ht... . A link to the code (for Pharo 1.2) is included.
While this release of the code is for Pharo, it shouldn't be a big deal to make it run on Squeak. My hope is that the Pharo community studies it in detail, adopts it, and eventually remove the old Morphic. For Squeak, maybe the same happens. Or perhaps there would be 2 Morphic UIs for Squeak: FullMorphic+Etoys and SimpleMorphic... So, what do you think?
I expect that this will fit nicely into Squeak's project structure:
Project MVCProjext MorphicProject SMxMorphicProject
So when you open a new project, the world menu would give the choice of "mvc project", "morphic project" or "SMx morphic project".
I do like the the prefix "SMx" by the way. It can mean whatever you want it to mean in the future, and I've learned that it is never a good idea to have the term "simple" in a class name ;-)
Dave
On Wed, Nov 10, 2010 at 02:46:54PM -0300, Juan Vuletich wrote:
Hi Folks,
A few days ago I released SimpleMorphic for Pharo. SimpleMorphic is the Morphic implementation in Cuis. It is much smaller and simpler than the one in Pharo (and in Squeak). Please see http://lists.gforge.inria.fr/pipermail/pharo-project/2010-November/035302.ht... . A link to the code (for Pharo 1.2) is included.
While this release of the code is for Pharo, it shouldn't be a big deal to make it run on Squeak. My hope is that the Pharo community studies it in detail, adopts it, and eventually remove the old Morphic. For Squeak, maybe the same happens. Or perhaps there would be 2 Morphic UIs for Squeak: FullMorphic+Etoys and SimpleMorphic... So, what do you think?
Many thanks to Juan for creating SimpleMorphic, and thanks also to ESUG for supporting his work to make SimpleMorphic available to the community.
To load SimpleMorphic into a fully updated trunk image, install the following from the Squeak inbox:
Morphic-dtl.523.mcz SMx-dtl.12 SimpleMorphic-dtl.7
After loading these three files, you can open a new SimpleMorphic project from the menu bar or from the world menu. Not everything works yet, but there is enough in place to open browsers, workspaces, etc and generally get a feel for how it works.
Notes:
This is based on the original distribution for Pharo: http://pharo.googlecode.com/issues/attachment?aid=6793947083037793423&na...
I attempted to preserve the SimpleMorphic package with as few changes as possible, and ended up with a SimpleMorphic package and an SMx support package, where all of the Squeak-specific changes are in SMx. The Project and ToolBuilder classes are modified copies of the Morphic versions, with no attempt to refactor or clean up unnecessary code (this can be done later, as the intent is to make SimpleMorphic available in a form as close as possible to the original distribution).
All of the development MCZ files are on my hard disk, and I can copy them either to SqueakSource or to squeak.org if there is an interest (not sure what to do with this, suggestions welcome).
The SimpleMorphic and SMx packages are entirely self-contained, and can be loaded and unloaded without affecting the normal Morphic or MVC environments:
(MCPackage named: 'SMx') unload. (MCPackage named: 'SimpleMorphic') unload.
Dave
I also sent this comment to the Pharo mail list recently, trying to make clear why SimpleMorphic is useful:
"Size of 4 core classes (Morph, MorphExtension, PasteUpMorph and WorldState) Pharo / Squeak / Cuis totalIvars: 39 / 46 / 26 totalClassVars: 15 / 10 / 5 totalInstMethods: 1170 / 1764 / 663 totalClassMethods: 55 / 71 / 16
Size of the whole Morph hierarchy Pharo / Squeak / Cuis totalClasses: 197 / 331 / 58 totalIvars: 649 / 1063 / 257 totalClassVars: 54 / 138 / 28 totalInstMethods: 6651 / 9186 / 2115 totalClassMethods: 303 / 858 / 127
SimpleMorphic is much smaller. Core classes are simpler and easier to understand, fix and extend. The most important part is that this is not blind removal of unused code. A lot of the functionality has been redesigned to make it simpler, and the removal was done with great care to result in a consistent system. This work started in 2004, so we're talking of about 6 years of careful work. All this means that SimpleMorphic does not support all the features that Pharo or Squeak might support. Please use the browsers and other tools in Cuis to check what it indeed can do.
Talking about complexity, let's take for example, morph layout. This is started with #doLayoutIn: in Pharo and #doLayoutIfNeeded in SimpleMorphic.
In Pharo, this method calls #adjustLayoutBounds: (19), #layout:in: (149), #layoutProportionallyIn: (10), #computeCellArrangement:in:horizontal:target: (87), #computeGlobalCellArrangement:in:horizontal:wrap:spacing: (31), #computeCellSizes:in:horizontal: (30), #computeExtraSpacing:in:horizontal:target: (136), #layoutLeftToRight:in: (91), #layoutTopToBottom:in: (91), #placeCells:in:horizontal:target: (70). The numbers in parenthesis are the sum of the lines of code of the implementors. Total lines of code for layout (taking only these most important methods) is 714. I doubt there are many people who really understand all of this code.
In SimpleMorphic (Cuis), this calls #layoutSubmorphsIn: (10), #applyLayoutFrameIn: (11), #layout:in: (24). Total lines of code is 45. I believe any smalltalker could understand these in just minutes."
Cheers, Juan Vuletich
Great work, thanks.
A suggestion, why don't follow a common pattern to name the Pharo/Squeak/Gemstone specific code for package XXX with the format:
XXX-Squeak
so that the packages be:
XXX-dtl.123.mcz XXX-Squeak-dtl.123.mcz XXX-Pharo-dtl.123.mcz
This way if a Metacello configuration is created for this package it will pull the corresponding dependency for tha platform where is being installed.
Cheers.
El vie, 04-03-2011 a las 18:41 -0500, David T. Lewis escribió:
On Wed, Nov 10, 2010 at 02:46:54PM -0300, Juan Vuletich wrote:
Hi Folks,
A few days ago I released SimpleMorphic for Pharo. SimpleMorphic is the Morphic implementation in Cuis. It is much smaller and simpler than the one in Pharo (and in Squeak). Please see http://lists.gforge.inria.fr/pipermail/pharo-project/2010-November/035302.ht... . A link to the code (for Pharo 1.2) is included.
While this release of the code is for Pharo, it shouldn't be a big deal to make it run on Squeak. My hope is that the Pharo community studies it in detail, adopts it, and eventually remove the old Morphic. For Squeak, maybe the same happens. Or perhaps there would be 2 Morphic UIs for Squeak: FullMorphic+Etoys and SimpleMorphic... So, what do you think?
Many thanks to Juan for creating SimpleMorphic, and thanks also to ESUG for supporting his work to make SimpleMorphic available to the community.
To load SimpleMorphic into a fully updated trunk image, install the following from the Squeak inbox:
Morphic-dtl.523.mcz SMx-dtl.12 SimpleMorphic-dtl.7
After loading these three files, you can open a new SimpleMorphic project from the menu bar or from the world menu. Not everything works yet, but there is enough in place to open browsers, workspaces, etc and generally get a feel for how it works.
Notes:
This is based on the original distribution for Pharo: http://pharo.googlecode.com/issues/attachment?aid=6793947083037793423&na...
I attempted to preserve the SimpleMorphic package with as few changes as possible, and ended up with a SimpleMorphic package and an SMx support package, where all of the Squeak-specific changes are in SMx. The Project and ToolBuilder classes are modified copies of the Morphic versions, with no attempt to refactor or clean up unnecessary code (this can be done later, as the intent is to make SimpleMorphic available in a form as close as possible to the original distribution).
All of the development MCZ files are on my hard disk, and I can copy them either to SqueakSource or to squeak.org if there is an interest (not sure what to do with this, suggestions welcome).
The SimpleMorphic and SMx packages are entirely self-contained, and can be loaded and unloaded without affecting the normal Morphic or MVC environments:
(MCPackage named: 'SMx') unload. (MCPackage named: 'SimpleMorphic') unload.
Dave
I also sent this comment to the Pharo mail list recently, trying to make clear why SimpleMorphic is useful:
"Size of 4 core classes (Morph, MorphExtension, PasteUpMorph and WorldState) Pharo / Squeak / Cuis totalIvars: 39 / 46 / 26 totalClassVars: 15 / 10 / 5 totalInstMethods: 1170 / 1764 / 663 totalClassMethods: 55 / 71 / 16
Size of the whole Morph hierarchy Pharo / Squeak / Cuis totalClasses: 197 / 331 / 58 totalIvars: 649 / 1063 / 257 totalClassVars: 54 / 138 / 28 totalInstMethods: 6651 / 9186 / 2115 totalClassMethods: 303 / 858 / 127
SimpleMorphic is much smaller. Core classes are simpler and easier to understand, fix and extend. The most important part is that this is not blind removal of unused code. A lot of the functionality has been redesigned to make it simpler, and the removal was done with great care to result in a consistent system. This work started in 2004, so we're talking of about 6 years of careful work. All this means that SimpleMorphic does not support all the features that Pharo or Squeak might support. Please use the browsers and other tools in Cuis to check what it indeed can do.
Talking about complexity, let's take for example, morph layout. This is started with #doLayoutIn: in Pharo and #doLayoutIfNeeded in SimpleMorphic.
In Pharo, this method calls #adjustLayoutBounds: (19), #layout:in: (149), #layoutProportionallyIn: (10), #computeCellArrangement:in:horizontal:target: (87), #computeGlobalCellArrangement:in:horizontal:wrap:spacing: (31), #computeCellSizes:in:horizontal: (30), #computeExtraSpacing:in:horizontal:target: (136), #layoutLeftToRight:in: (91), #layoutTopToBottom:in: (91), #placeCells:in:horizontal:target: (70). The numbers in parenthesis are the sum of the lines of code of the implementors. Total lines of code for layout (taking only these most important methods) is 714. I doubt there are many people who really understand all of this code.
In SimpleMorphic (Cuis), this calls #layoutSubmorphsIn: (10), #applyLayoutFrameIn: (11), #layout:in: (24). Total lines of code is 45. I believe any smalltalker could understand these in just minutes."
Cheers, Juan Vuletich
On Fri, Mar 04, 2011 at 11:20:53PM -0600, Miguel Cob? wrote:
Great work, thanks.
A suggestion, why don't follow a common pattern to name the Pharo/Squeak/Gemstone specific code for package XXX with the format:
XXX-Squeak
so that the packages be:
XXX-dtl.123.mcz XXX-Squeak-dtl.123.mcz XXX-Pharo-dtl.123.mcz
This way if a Metacello configuration is created for this package it will pull the corresponding dependency for tha platform where is being installed.
Cheers.
That's a good idea, although at this point I'm not sure which bits are Pharo or Squeak specific. Most of the extensions in the SMx package that I referred to as "Squeak-specific" are from Juan's change sets that he did for the Pharo integration, so hopefully the differences will not be too great.
Thanks, Dave
On 3/4/11 9:41 PM, "David T. Lewis" lewis@mail.msen.com wrote:
Many thanks to Juan for creating SimpleMorphic, and thanks also to ESUG for supporting his work to make SimpleMorphic available to the community.
To load SimpleMorphic into a fully updated trunk image, install the following from the Squeak inbox:
Morphic-dtl.523.mcz SMx-dtl.12 SimpleMorphic-dtl.7
After loading these three files, you can open a new SimpleMorphic project from the menu bar or from the world menu. Not everything works yet, but there is enough in place to open browsers, workspaces, etc and generally get a feel for how it works.
Many thanks to Juan for doing SimpleMorphic Many thank to you for bring it to trunk
Now i could do SqueakLight4
A trunk / pharo cross with SimpleMorphic and my own wild ideas
I fact , in this moment i chatting with German Arduino and trying your recipe in my SqueakLight3-Cog-alpha.9902.image.
What is Squeak 4.2 unloaded to my taste and updated until this morning with only my choices from trunk .
All goes right until now, so i took the rest of Carnaval for follow discussion , working my ideas and test.
Thanks Juan, Thank David
Edgar
P.S. Could follow test in Twitter as #Squeaklight4 @morplenauta
On Sat, Mar 05, 2011 at 08:08:00PM -0200, Edgar J. De Cleene wrote:
On 3/4/11 9:41 PM, "David T. Lewis" lewis@mail.msen.com wrote:
Many thanks to Juan for creating SimpleMorphic, and thanks also to ESUG for supporting his work to make SimpleMorphic available to the community.
To load SimpleMorphic into a fully updated trunk image, install the following from the Squeak inbox:
Morphic-dtl.523.mcz SMx-dtl.12 SimpleMorphic-dtl.7
After loading these three files, you can open a new SimpleMorphic project from the menu bar or from the world menu. Not everything works yet, but there is enough in place to open browsers, workspaces, etc and generally get a feel for how it works.
Many thanks to Juan for doing SimpleMorphic Many thank to you for bring it to trunk
Hi Edgar,
The integration of SimpleMorphic as a Squeak project is not complete, so think of this as "pre-alpha". But I'm still working on it, and learning a lot about Morphic in the process :)
Dave
Now i could do SqueakLight4
A trunk / pharo cross with SimpleMorphic and my own wild ideas
I fact , in this moment i chatting with German Arduino and trying your recipe in my SqueakLight3-Cog-alpha.9902.image.
What is Squeak 4.2 unloaded to my taste and updated until this morning with only my choices from trunk .
All goes right until now, so i took the rest of Carnaval for follow discussion , working my ideas and test.
Thanks Juan, Thank David
Edgar
P.S. Could follow test in Twitter as #Squeaklight4 @morplenauta
On 3/6/11 1:05 PM, "David T. Lewis" lewis@mail.msen.com wrote:
Hi Edgar,
The integration of © as a Squeak project is not complete, so think of this as "pre-alpha". But I'm still working on it, and learning a lot about Morphic in the process :)
Dave
Yes , I know. A lot of work for having a useful system, but is a giant step having SimpleMorphic running.
Need re-doing all tools windows. Can beg Monticello Browser first ?
My idea is having a no backward compatible system. Run in SimpleMorphic on top of Squeak / Pharo cross.
Lots of learning....
Edgar
Yeah, in Squeak's situation it makes even more sense than it makes in Pharo, because we have a lot of features and applications in our image which the community is strongly aligned against breaking until they can be reloaded as external packages, which I think is admirable and responsible, but makes it really hard to drive Morphic into the future.
SimpleMorphic is nice because we can enjoy our past while slicing off a delicious piece of the future (Cuis' Morphic implementation approaches an ideal in my view, though some features are missing.)
On Mar 6, 2011, at 2:01 PM, "Edgar J. De Cleene" edgardec2005@gmail.com wrote:
On 3/6/11 1:05 PM, "David T. Lewis" lewis@mail.msen.com wrote:
Hi Edgar,
The integration of © as a Squeak project is not complete, so think of this as "pre-alpha". But I'm still working on it, and learning a lot about Morphic in the process :)
Dave
Yes , I know. A lot of work for having a useful system, but is a giant step having SimpleMorphic running.
Need re-doing all tools windows. Can beg Monticello Browser first ?
My idea is having a no backward compatible system. Run in SimpleMorphic on top of Squeak / Pharo cross.
Lots of learning....
Edgar
On 3/6/11 10:46 PM, "Casey Ransberger" casey.obrien.r@gmail.com wrote:
Yeah, in Squeak's situation it makes even more sense than it makes in Pharo, because we have a lot of features and applications in our image which the community is strongly aligned against breaking until they can be reloaded as external packages, which I think is admirable and responsible, but makes it really hard to drive Morphic into the future.
SimpleMorphic is nice because we can enjoy our past while slicing off a delicious piece of the future (Cuis' Morphic implementation approaches an ideal in my view, though some features are missing.)
On Mar 6, 2011, at 2:01 PM, "Edgar J. De Cleene" edgardec2005@gmail.com wrote:
On 3/6/11 1:05 PM, "David T. Lewis" lewis@mail.msen.com wrote:
Hi Edgar,
The integration of © as a Squeak project is not complete, so think of this as "pre-alpha". But I'm still working on it, and learning a lot about Morphic in the process :)
Dave
Yes , I know. A lot of work for having a useful system, but is a giant step having SimpleMorphic running.
Need re-doing all tools windows. Can beg Monticello Browser first ?
My idea is having a no backward compatible system. Run in SimpleMorphic on top of Squeak / Pharo cross.
Lots of learning....
Edgar
It's obvious none today Morphic app could run in SimpleMorphic, right ? So, what about if we design a Traslator package which could take a today Morphic app and convert it to SimpleMorphic ?
Juan could advice to a Translator "Task Force". As I have a nice internal LAN with all kind of computers , volunteer for doing test and reports. When learn how to do , also could help with code.
Edgar
Edgar J. De Cleene wrote:
It's obvious none today Morphic app could run in SimpleMorphic, right ? So, what about if we design a Traslator package which could take a today Morphic app and convert it to SimpleMorphic ?
Juan could advice to a Translator "Task Force". As I have a nice internal LAN with all kind of computers , volunteer for doing test and reports. When learn how to do , also could help with code.
Edgar
I will support this initiative (or any other that involves code I write). I will participate in discussions, advice if needed, and fix any bugs found in my code.
Cheers, Juan Vuletich
On Mon, Mar 07, 2011 at 10:45:18AM -0300, Juan Vuletich wrote:
Edgar J. De Cleene wrote:
It's obvious none today Morphic app could run in SimpleMorphic, right ? So, what about if we design a Traslator package which could take a today Morphic app and convert it to SimpleMorphic ?
Juan could advice to a Translator "Task Force". As I have a nice internal LAN with all kind of computers , volunteer for doing test and reports. When learn how to do , also could help with code.
Edgar
I will support this initiative (or any other that involves code I write). I will participate in discussions, advice if needed, and fix any bugs found in my code.
Cheers, Juan Vuletich
Thanks Juan.
I moved all of the SimpleMorphic updates I have done for Squeak to a project on SqueakSource called "SimpleMorphic for Squeak". This includes some updates since the versions I put into the inbox.
MCHttpRepository location: 'http://www.squeaksource.com/SimpleMorphicSqueak' user: '' password: ''
This should be just a temporary repository, but I guess it is better to put it on SqueakSource than leave it sitting on my hard drive.
I will remove the files that I put in the Squeak inbox, which are now obsolete.
Dave
On 3/8/11 2:29 AM, "David T. Lewis" lewis@mail.msen.com wrote:
Thanks Juan.
I moved all of the SimpleMorphic updates I have done for Squeak to a project on SqueakSource called "SimpleMorphic for Squeak". This includes some updates since the versions I put into the inbox.
MCHttpRepository location: 'http://www.squeaksource.com/SimpleMorphicSqueak' user: '' password: ''
This should be just a temporary repository, but I guess it is better to put it on SqueakSource than leave it sitting on my hard drive.
I will remove the files that I put in the Squeak inbox, which are now obsolete.
Dave
I wish be added to repo. Like to know any you could share about steps for having SimpleMorphic into Squeak.
In particular, about building windows, as seems me the first thing to do. Once we have MonticelloBrowser, DependencyBrowser, DualChangeSorter and ArchiveViewer , could rip old Morphic and have the first Squeak of XXI century.
This also give us a glimpse of how a Traslator package could be.
I excited...and very grateful to you and to Juan.
Cheers
On Tue, Mar 08, 2011 at 06:34:20AM -0200, Edgar J. De Cleene wrote:
On 3/8/11 2:29 AM, "David T. Lewis" lewis@mail.msen.com wrote:
Thanks Juan.
I moved all of the SimpleMorphic updates I have done for Squeak to a project on SqueakSource called "SimpleMorphic for Squeak". This includes some updates since the versions I put into the inbox.
MCHttpRepository location: 'http://www.squeaksource.com/SimpleMorphicSqueak' user: '' password: ''
This should be just a temporary repository, but I guess it is better to put it on SqueakSource than leave it sitting on my hard drive.
I will remove the files that I put in the Squeak inbox, which are now obsolete.
Dave
I wish be added to repo.
Hi Edgar,
I just added you to the repo.
Like to know any you could share about steps for having SimpleMorphic into Squeak.
Start with a fully updated trunk image (including the ToolBuilder changes that I added yesterday). Then load the latest versions of packages SimpleMorphic and SMx from the SimpleMorphicSqueak project on SqueakSource.
Then from the toolbar, Projects -> New Project -> new SMxMorphicProject
Notes:
Do not save your image while running SimpleMorphic, because restarting a SMxMorphicProject does not work yet (so just return to previous project before saving).
You may also need to load a couple of methods from a package in the inbox, Morphic-dtl.523. Otherwise you may need to manually re-initialize classes Editor and TextEditor after re-entering a normal Morphic project.
The main things I have been working on are:
- SMxMorphicProject for hosting the SimpleMorphic environment. This is currently a modified copy of MorphicProject. Of course, the original Morphic likes to think that it is the "only" Morphic world, so getting the two to work together was a bit tricky.
- Toolbuilder support for SimpleMorphic. This is not complete, but the changes are all in the SMx package and there is enough to make many of the tools work (but not yet the debugger!!!).
- The Editor hierarchy in Cuis has been updated in a very nice way (event dispatch) but there are lots of changes compared with Squeak. Menus are different also. Making SimpleMorphic loadable as a project type makes it easy to compare the two. I renamed some of the event handling methods (e.g. Editor>>backspace: becomes Editor>>backspaceEvent: so the original Editor>>backspace: method remains in place for use by Morphic and MVC).
In particular, about building windows, as seems me the first thing to do. Once we have MonticelloBrowser, DependencyBrowser, DualChangeSorter and ArchiveViewer , could rip old Morphic and have the first Squeak of XXI century.
This also give us a glimpse of how a Traslator package could be.
I excited...and very grateful to you and to Juan.
Great! Thank you.
Happy Carnaval,
Dave
squeak-dev@lists.squeakfoundation.org