[Pharo-users] Problem learning about Magritte
Hello Sorry if this is the wrong place to ask this. I am trying to understand how Magritte works, initially by following the first example in Ch. 26.2 of the Seaside book. I have started with a fresh download of Pharo 3.0, and I have installed Magritte 3 and Seaside 3. I realise that the Seaside book example is based on Magritte 2, so I have made necessary changes to the example code (descriptions are on the instance side, insert pragmas, change #description to #magritteDescription). All works well up to the point where I try to generate the Seaside editor. This fails because the code: Address example1 asComponent produces a 'does not understand' message for #asComponent. I have not been able to work through all of Seaside to see where this method is defined, and I am at a bit of a loss. I know this is rather elementary, but could someone give me a pointer? Also, if Magritte 3 is now the norm, will the Seaside book examples be updated to reflect this? Thanks in advance for any help Peter Kenny
Re: [Pharo-users] Problem learning about Magritte
Hi Peter That sounds like you have independently installed Seaside and Magritte. You might miss the part connecting them together. Seaside can be used without Magritte, and Magritte without Seaside. That happens if you just install stable Seaside and stable Magritte from the configuration browser. Can you check if you have Magritte-Seaside loaded? That is in the Seaside group of Magritte. If not, you need the other option in the configuration browser, just loading the configuration of Magritte3. Then in a workspace, do-it (ConfigurationOfMagritte3 project version: #stable) load: 'Seaside'. A faster way to start can be to use one of the images from https://ci.inria.fr/pharo-contribution/ Pier, QCMagritte and Forum all come with both Magritte and Seaside preloaded. Stephan
Re: [Pharo-users] Problem learning about Magritte
2014-05-12 20:21 GMT-03:00 Stephan Eggermont : > A faster way to start can be to use one of the images from > https://ci.inria.fr/pharo-contribution/ > Pier, QCMagritte and Forum all come with both Magritte and Seaside > preloaded. I don't like this "faster way" of prebuilt images. Makes me think of seeds for forked branches. Unless something is wrong with the package system, I would encourage its use, even if it takes long. Regards, Esteban A. Maringolo
Re: [Pharo-users] Problem learning about Magritte
Esteban wrote: >I don't like this "faster way" of prebuilt images. >Makes me think of seeds for forked branches. >Unless something is wrong with the package system, I would encourage >its use, even if it takes long. I strongly encourage the use of ci images. And of course you should add your own, once you've decided what packages you need. The main advantage is that it provides feedback to the core pharo development on changes. Stephan
Re: [Pharo-users] Problem learning about Magritte
2014-05-12 20:47 GMT-03:00 Stephan Eggermont : > Esteban wrote: >>I don't like this "faster way" of prebuilt images. >>Makes me think of seeds for forked branches. >>Unless something is wrong with the package system, I would encourage >>its use, even if it takes long. > > I strongly encourage the use of ci images. And of course you should > add your own, once you've decided what packages you need. > The main advantage is that it provides feedback to the core pharo > development on changes.
Re: [Pharo-users] Problem learning about Magritte
2014-05-12 20:47 GMT-03:00 Stephan Eggermont : > Esteban wrote: >>I don't like this "faster way" of prebuilt images. >>Makes me think of seeds for forked branches. >>Unless something is wrong with the package system, I would encourage >>its use, even if it takes long. > > I strongly encourage the use of ci images. And of course you should > add your own, once you've decided what packages you need. > The main advantage is that it provides feedback to the core pharo > development on changes. I'm totally in about CI images for testing purposes, but not for distribution. Maybe it's a matter of personal taste. Esteban A. Maringolo ps: sorry for the off topic
Re: [Pharo-users] Problem learning about Magritte
On 13/5/14 00:50, PBK Research wrote: Hello Sorry if this is the wrong place to ask this. I am trying to understand how Magritte works, initially by following the first example in Ch. 26.2 of the Seaside book. I have started with a fresh download of Pharo 3.0, and I have installed Magritte 3 and Seaside 3. I realise that the Seaside book example is based on Magritte 2, so I have made necessary changes to the example code (descriptions are on the instance side, insert pragmas, change #description to #magritteDescription). All works well up to the point where I try to generate the Seaside editor. This fails because the code: Address example1 asComponent produces a 'does not understand' message for #asComponent. I have not been able to work through all of Seaside to see where this method is defined, and I am at a bit of a loss. I know this is rather elementary, but could someone give me a pointer? Also, if Magritte 3 is now the norm, will the Seaside book examples be updated to reflect this? They should but only I - reverse engineer Magritte 3 - get the time to do it I was planning to write an independent Chapter on Magrritte 3 but I got the same limits. So if somebody knowlegeable wants to start writing two/three blog posts we could turn it into a book chapter. Thanks in advance for any help Peter Kenny
Re: [Pharo-users] Problem learning about Magritte
On 13/5/14 01:34, Esteban A. Maringolo wrote: 2014-05-12 20:21 GMT-03:00 Stephan Eggermont : A faster way to start can be to use one of the images from https://ci.inria.fr/pharo-contribution/ Pier, QCMagritte and Forum all come with both Magritte and Seaside preloaded. I don't like this "faster way" of prebuilt images. Makes me think of seeds for forked branches. Unless something is wrong with the package system, I would encourage its use, even if it takes long. why? you can just read the configuration of the jenkins job and you know how to build it. The difference is that with the jenkins job we are SURE that the script to load works. Stef Regards, Esteban A. Maringolo
Re: [Pharo-users] Problem learning about Magritte
I ve both of these things working in my app on pharo3. I'll have a look. Le 13 mai 2014 09:25, "stepharo" a écrit : > > On 13/5/14 01:34, Esteban A. Maringolo wrote: > >> 2014-05-12 20:21 GMT-03:00 Stephan Eggermont : >> >> A faster way to start can be to use one of the images from >>> https://ci.inria.fr/pharo-contribution/ >>> Pier, QCMagritte and Forum all come with both Magritte and Seaside >>> preloaded. >>> >> I don't like this "faster way" of prebuilt images. >> Makes me think of seeds for forked branches. >> Unless something is wrong with the package system, I would encourage >> its use, even if it takes long. >> > > why? > you can just read the configuration of the jenkins job and you know how to > build it. > The difference is that with the jenkins job we are SURE that the script to > load works. > > Stef > >> >> Regards, >> >> Esteban A. Maringolo >> >> >> > > >
Re: [Pharo-users] Problem learning about Magritte
Hi Stephan Many thanks. I was missing the Magritte-Seaside component. The problem is now fixed. No doubt I will find others! I started from scratch and loaded all the packages because I wanted to understand how these things work, and because I needed a combination of things installed - I have also loaded Voyage and PetitParser, hoping to use all these things together. I did not expect to find all of these in a pre-built image - maybe I was wrong. Many thanks also for the speedy response. I posted my question and went to bed. I did not expect to get an answer after midnight. It is interesting to see that others work even stranger hours than I do! Thanks also to others who commented. To Stepharo: I did not mean to sound critical. I was wondering if an updated version already exists and I have not yet found it. I know quite a bit about Smalltalk from Dolphin, but I am new to Pharo and I feel like a blind man stumbling about. There are so many packages around, and I do not understand what most of them do. Could I just try one supplementary question about using Magritte. The paper 'Magritte - A Meta-Driven Approach to Empower Developers and End Users' by Lukas Renggli, Stephane Ducasse and Adrian Kuhn has a section 3.2 on building an editor, which shows how the same description can generate an editor in Seaside or in Morphic Squeak (!). I know that #asComponent will generate the Seaside version; is there a method #asMorph which will give the morphic version as easily, or if not how do I get an editor as a Pharo window? Thanks again for the help. Peter Kenny -Original Message- From: Pharo-users [mailto:pharo-users-boun...@lists.pharo.org] On Behalf Of Stephan Eggermont Sent: 13 May 2014 00:22 To: pharo-users@lists.pharo.org Subject: Re: [Pharo-users] Problem learning about Magritte Hi Peter That sounds like you have independently installed Seaside and Magritte. You might miss the part connecting them together. Seaside can be used without Magritte, and Magritte without Seaside. That happens if you just install stable Seaside and stable Magritte from the configuration browser. Can you check if you have Magritte-Seaside loaded? That is in the Seaside group of Magritte. If not, you need the other option in the configuration browser, just loading the configuration of Magritte3. Then in a workspace, do-it (ConfigurationOfMagritte3 project version: #stable) load: 'Seaside'. A faster way to start can be to use one of the images from https://ci.inria.fr/pharo-contribution/ Pier, QCMagritte and Forum all come with both Magritte and Seaside preloaded. Stephan
Re: [Pharo-users] Problem learning about Magritte
2014-05-13 4:25 GMT-03:00 stepharo : > > On 13/5/14 01:34, Esteban A. Maringolo wrote: >> >> 2014-05-12 20:21 GMT-03:00 Stephan Eggermont : >> >>> A faster way to start can be to use one of the images from >>> https://ci.inria.fr/pharo-contribution/ >>> Pier, QCMagritte and Forum all come with both Magritte and Seaside >>> preloaded. >> >> I don't like this "faster way" of prebuilt images. >> Makes me think of seeds for forked branches. >> Unless something is wrong with the package system, I would encourage >> its use, even if it takes long. > > > why? > you can just read the configuration of the jenkins job and you know how to > build it. > The difference is that with the jenkins job we are SURE that the script to > load works. If the script to load works in a clean image I would put it in the project page in SmalltalkHub or similar. And a reference to the CI image in case running the script gets convoluted. Again, CI images for testing of important contributions is great, but if projects/packages can't be loaded easily into an existing image it could mean the packaging is done wrong (developer) or the right packaging can't be specified (Metacello and friends), 99% of the times it is the former. Regards, Esteban A. Maringolo
Re: [Pharo-users] Problem learning about Magritte
Peter wrote: >is there a method #asMorph which will give the >morphic version as easily, or if not how do I get an editor as a Pharo >window? There is asMagritteMorph yes, defined in Magritte-Morph. You might need to load that additionally (it is loaded in the Forum image). Stephan
Re: [Pharo-users] Problem learning about Magritte
Stephan Thanks. I have Magritte-Morph in my image, but I wonder if anyone has debugged it. I send asMagritteMorph to a Magritte description and I get a MAContainerMorph, which is OK. Try sending openInWorld to this, and it falls over in MADescriptionMorph>>buildMorph, which calls MADescriptionMorph>>rectangleMorph, which tries to create an instance of the non-existent class RectangleMorph. I have tried to trace this back, and it is true that my original Pharo 3.0 image, downloaded on 30 Apr 2014, does not have the class RectangleMorph. I have looked at older images, and the class exists. Maybe my mistake was to try to use the Pharo 3.0 image the day it was announced. Perhaps I would be better off using one of the pre-packed images you mention. My only worry is that there is a list of dozens of contributions on https://ci.inria.fr/pharo-contribution/, and unless you have far more knowledge than I have it is impossible to know which might be helpful. For now I will follow your hint and use the Forum image. Thanks again for your help. Peter Kenny -Original Message- From: Pharo-users [mailto:pharo-users-boun...@lists.pharo.org] On Behalf Of Stephan Eggermont Sent: 14 May 2014 00:25 To: pharo-users@lists.pharo.org Subject: Re: [Pharo-users] Problem learning about Magritte Peter wrote: >is there a method #asMorph which will give the >morphic version as easily, or if not how do I get an editor as a Pharo >window? There is asMagritteMorph yes, defined in Magritte-Morph. You might need to load that additionally (it is loaded in the Forum image). Stephan
Re: [Pharo-users] Problem learning about Magritte
you have an older version (configuration is probably not up to date)… just open project in monticello and load latest magritte-morph, it should work. and yes, I use it all the time :) Esteban On 14 May 2014, at 12:00, PBK Research wrote: > Stephan > > Thanks. I have Magritte-Morph in my image, but I wonder if anyone has > debugged it. I send asMagritteMorph to a Magritte description and I get a > MAContainerMorph, which is OK. Try sending openInWorld to this, and it falls > over in MADescriptionMorph>>buildMorph, which calls > MADescriptionMorph>>rectangleMorph, which tries to create an instance of the > non-existent class RectangleMorph. > > I have tried to trace this back, and it is true that my original Pharo 3.0 > image, downloaded on 30 Apr 2014, does not have the class RectangleMorph. I > have looked at older images, and the class exists. Maybe my mistake was to > try to use the Pharo 3.0 image the day it was announced. Perhaps I would be > better off using one of the pre-packed images you mention. My only worry is > that there is a list of dozens of contributions on > https://ci.inria.fr/pharo-contribution/, and unless you have far more > knowledge than I have it is impossible to know which might be helpful. For > now I will follow your hint and use the Forum image. > > Thanks again for your help. > > Peter Kenny > > -Original Message- > From: Pharo-users [mailto:pharo-users-boun...@lists.pharo.org] On Behalf Of > Stephan Eggermont > Sent: 14 May 2014 00:25 > To: pharo-users@lists.pharo.org > Subject: Re: [Pharo-users] Problem learning about Magritte > > Peter wrote: > >> is there a method #asMorph which will give the >> morphic version as easily, or if not how do I get an editor as a Pharo >> window? > > There is asMagritteMorph yes, defined in Magritte-Morph. > You might need to load that additionally (it is loaded in the Forum image). > > Stephan > > >
Re: [Pharo-users] Problem learning about Magritte
Peter wrote: >Thanks. I have Magritte-Morph in my image, but I wonder if anyone has >debugged it. I send asMagritteMorph to a Magritte description and I get a >MAContainerMorph, which is OK. Try sending openInWorld to this, and it falls >over in MADescriptionMorph>>buildMorph, which calls >MADescriptionMorph>>rectangleMorph, which tries to create an instance of the >non-existent class RectangleMorph. Hmm, that looks like you have an old version of Magritte-Morph loaded. If you open the Monticello browser, you can select the Magritte-Morph package and then open its repository to see if there is a newer version. If you select a newer version and click Changes, you can see if this newer version is likely to solve your problem (it is). If you take a look at the ConfigurationOfMagritte3, you can see what goes wrong. version32 is the first one referring to a Magritte-Morph newer than version 70. stable: installs version311 however. So ConfigurationOfMagritte3 needs a new stable version. (Done) >I have tried to trace this back, and it is true that my original Pharo 3.0 >image, downloaded on 30 Apr 2014, does not have the class RectangleMorph. I >have looked at older images, and the class exists. Maybe my mistake was to >try to use the Pharo 3.0 image the day it was announced. Perhaps I would be >better off using one of the pre-packed images you mention. Pharo 3 has lots of improvements and clean-ups. RectangleMorph behavior was folded back into BorderedMorph. The projects running on top of Pharo have different ideas of what should be stable and what development versions. The people developing them mostly use development releases or specific versions. If there are not a lot of non-developing users the stable version tends to lag behind. And if the specific problem is not in the tests, CI will not break. Just before the release, there are lots of fixes and the image changes fast. Not all projects will be able to synchronize fast, and have sufficient trust to declare a new version stable. So just after a release, you might have to use a lot of development versions, check repositories and ask questions on the mailing lists. Please do, that is the only way we can improve. >My only worry is that there is a list of dozens of contributions on >https://ci.inria.fr/pharo-contribution/, and unless you have far more >knowledge than I have it is impossible to know which might be helpful. For >now I will follow your hint and use the Forum image. That's a helpful comment. Thank you. We should improve the project descriptions (at least I should for mine). Stephan
Re: [Pharo-users] Problem learning about Magritte
Esteban Well I don't have /such/ an old version. As I said, I downloaded the new Pharo 3.0 on 30 April. On 5 May I opened the configuration browser and loaded ConfigurationOfMagritte3. So presumably what I have is at most 9 days old. One of the frustrations of using Pharo is that everything seems to be always changing. I have in fact sorted it out by looking at the Forum image, following Stephan's suggestion. There I found that the call to RectangleMorph class has become BorderedMorph, and when I change that it all works. I now have an editor window which will change the instance, so I more or less understand how to use it. I still can't get it to produce an editor in a browser using Seaside, but that is less important. Peter Kenny -Original Message- From: Pharo-users [mailto:pharo-users-boun...@lists.pharo.org] On Behalf Of Esteban Lorenzano Sent: 14 May 2014 12:35 To: Any question about pharo is welcome Subject: Re: [Pharo-users] Problem learning about Magritte you have an older version (configuration is probably not up to date). just open project in monticello and load latest magritte-morph, it should work. and yes, I use it all the time :) Esteban On 14 May 2014, at 12:00, PBK Research wrote: > Stephan > > Thanks. I have Magritte-Morph in my image, but I wonder if anyone has > debugged it. I send asMagritteMorph to a Magritte description and I get a > MAContainerMorph, which is OK. Try sending openInWorld to this, and it falls > over in MADescriptionMorph>>buildMorph, which calls > MADescriptionMorph>>rectangleMorph, which tries to create an instance of the > non-existent class RectangleMorph. > > I have tried to trace this back, and it is true that my original Pharo 3.0 > image, downloaded on 30 Apr 2014, does not have the class RectangleMorph. I > have looked at older images, and the class exists. Maybe my mistake was to > try to use the Pharo 3.0 image the day it was announced. Perhaps I would be > better off using one of the pre-packed images you mention. My only worry is > that there is a list of dozens of contributions on > https://ci.inria.fr/pharo-contribution/, and unless you have far more > knowledge than I have it is impossible to know which might be helpful. For > now I will follow your hint and use the Forum image. > > Thanks again for your help. > > Peter Kenny > > -Original Message- > From: Pharo-users [mailto:pharo-users-boun...@lists.pharo.org] On Behalf Of > Stephan Eggermont > Sent: 14 May 2014 00:25 > To: pharo-users@lists.pharo.org > Subject: Re: [Pharo-users] Problem learning about Magritte > > Peter wrote: > >> is there a method #asMorph which will give the >> morphic version as easily, or if not how do I get an editor as a Pharo >> window? > > There is asMagritteMorph yes, defined in Magritte-Morph. > You might need to load that additionally (it is loaded in the Forum image). > > Stephan > > >
Re: [Pharo-users] Problem learning about Magritte
Stephan Thanks for the comment. I understand the point about development and things not always being in step. But if you look at it from my point of view, I am an elderly retired statistician who does programming for fun, I am not an expert in development and I am pretty new to Pharo. It all looks a maze of new terminology to me - I don't understand the difference between Monticello and Metacello, for instance. I am sure to an expert your explanation of how to check the correct version of Magritte3 is quite straightforward, but I would never have found my way to that conclusion myself. As I pointed out to Esteban, I used the configuration browser on 5 May to get the stable version of Magritte3. If that was already out of date, I am pretty well lost. Still, I am making progress with my original aim of learning about Magritte, and there are many helpful people on this group, so you can just regard this as me blowing off steam after things had not gone completely easily. Peter Kenny -Original Message- From: Pharo-users [mailto:pharo-users-boun...@lists.pharo.org] On Behalf Of Stephan Eggermont Sent: 14 May 2014 12:58 To: pharo-users@lists.pharo.org Subject: Re: [Pharo-users] Problem learning about Magritte Peter wrote: >Thanks. I have Magritte-Morph in my image, but I wonder if anyone has >debugged it. I send asMagritteMorph to a Magritte description and I get a >MAContainerMorph, which is OK. Try sending openInWorld to this, and it falls >over in MADescriptionMorph>>buildMorph, which calls >MADescriptionMorph>>rectangleMorph, which tries to create an instance of the >non-existent class RectangleMorph. Hmm, that looks like you have an old version of Magritte-Morph loaded. If you open the Monticello browser, you can select the Magritte-Morph package and then open its repository to see if there is a newer version. If you select a newer version and click Changes, you can see if this newer version is likely to solve your problem (it is). If you take a look at the ConfigurationOfMagritte3, you can see what goes wrong. version32 is the first one referring to a Magritte-Morph newer than version 70. stable: installs version311 however. So ConfigurationOfMagritte3 needs a new stable version. (Done) >I have tried to trace this back, and it is true that my original Pharo 3.0 >image, downloaded on 30 Apr 2014, does not have the class RectangleMorph. I >have looked at older images, and the class exists. Maybe my mistake was to >try to use the Pharo 3.0 image the day it was announced. Perhaps I would be >better off using one of the pre-packed images you mention. Pharo 3 has lots of improvements and clean-ups. RectangleMorph behavior was folded back into BorderedMorph. The projects running on top of Pharo have different ideas of what should be stable and what development versions. The people developing them mostly use development releases or specific versions. If there are not a lot of non-developing users the stable version tends to lag behind. And if the specific problem is not in the tests, CI will not break. Just before the release, there are lots of fixes and the image changes fast. Not all projects will be able to synchronize fast, and have sufficient trust to declare a new version stable. So just after a release, you might have to use a lot of development versions, check repositories and ask questions on the mailing lists. Please do, that is the only way we can improve. >My only worry is that there is a list of dozens of contributions on >https://ci.inria.fr/pharo-contribution/, and unless you have far more >knowledge than I have it is impossible to know which might be helpful. For >now I will follow your hint and use the Forum image. That's a helpful comment. Thank you. We should improve the project descriptions (at least I should for mine). Stephan
Re: [Pharo-users] Problem learning about Magritte
2014-05-14 9:25 GMT-03:00 PBK Research : > Stephan > Still, I am making progress with my original aim of learning about Magritte, > and there are many helpful people on this group, so you can just regard this > as me blowing off steam after things had not gone completely easily. Plus, you mention you're coming from Dolphin Smalltalk. Which is easier than the average, in terms of straightforwardness. Pharo has A LOT to offer, once you get used to aim at a moving target :) Esteban A. Maringolo
Re: [Pharo-users] Problem learning about Magritte
I, for one, need to learn the Unicode UTF-128 "steam release" emoticon ... it must be in some supplement codepage. It should look like the icon on my "Do you REALLY want to post this ?" mail client DialogLastChance window ... ;-) ( and this maillist is just a nice bunch of Smalltalkers, too ! ) #LastChance2Dialog On 14 May 2014 09:30, Esteban A. Maringolo wrote: > 2014-05-14 9:25 GMT-03:00 PBK Research : > > Stephan > > > Still, I am making progress with my original aim of learning about > Magritte, > > and there are many helpful people on this group, so you can just regard > this > > as me blowing off steam after things had not gone completely easily. > > Plus, you mention you're coming from Dolphin Smalltalk. > Which is easier than the average, in terms of straightforwardness. > > Pharo has A LOT to offer, once you get used to aim at a moving target :) > > > Esteban A. Maringolo > >
Re: [Pharo-users] Problem learning about Magritte
2014-05-14 10:38 GMT-03:00 Robert Shiplett : > I, for one, need to learn the Unicode UTF-128 "steam release" emoticon ... > it must be in some supplement codepage. > > It should look like the icon on my "Do you REALLY want to post this ?" mail > client DialogLastChance window ... > > ;-) > > ( and this maillist is just a nice bunch of Smalltalkers, too ! ) > > #LastChance2Dialog Sorry, but I didn't get the meaning of this. #lostInTranslation But to clarify my intention, I was encouraging Peter to keep betting on Pharo, given the visible frustration he had when told that something downloaded a week ago is outdated. Regards, Esteban.
Re: [Pharo-users] Problem learning about Magritte
Peter wrote: >It all looks a maze of >new terminology to me - I don't understand the difference between Monticello >and Metacello, for instance. Both are part of configuration management. Historically, Monticello came first. It supports distributed version control of a single package. Package is a problematic concept in Pharo (and Squeak), as multiple class categories belong to one package. Class category and package are often used as if they are the same. The Magritte-Model package contains all categories starting with 'Magritte-Model', a.o. Magritte-Model-Core. Monticello has support for required packages, but this is better expressed in Metacello. Metacello solves the problem of dealing with multiple platforms, dependencies of packages and different status. Better and longer explanations can be found in the Deep into Pharo book http://www.deepintopharo.com >I am sure to an expert your explanation of how >to check the correct version of Magritte3 is quite straightforward, but I >would never have found my way to that conclusion myself. Yes, that takes time and experience. A smalltalk system is large and finding your way around is not simple. I hope explaining how I find out helps. >As I pointed out to >Esteban, I used the configuration browser on 5 May to get the stable version >of Magritte3. If that was already out of date, I am pretty well lost. There was no test for this, so the build was green :( >Still, I am making progress with my original aim of learning about Magritte, >and there are many helpful people on this group, so you can just regard this >as me blowing off steam after things had not gone completely easily. Good. Just continue telling us where we need to improve. Stephan
Re: [Pharo-users] Problem learning about Magritte
Esteban Well, I am carrying on, but I do wonder why Pharo has to be such a rapidly moving target. There are virtues in stability, and perhaps there should be a filtering process before any change is made, to ensure that the benefits outweigh any disruption. I must admit that, at times, Pharo looks like a playground for a fairly small group of very clever people who are in love with the process of development. I got involved with Pharo again recently - having looked at it briefly several years ago - because I had read papers, mainly by Lukas Renggli, about Magritte and PetitParser, and I thought these were brilliant ideas that I wanted to explore. But am sure that, if I could get the functions of Magritte and PetitParser in a stable environment like Dolphin, I would drop Pharo like a shot. While I am in a moaning mood - I'm not always like this! - could anyone tell me whether there is a glossary of names for Pharo extensions which will tell beginners like me what they are for and whether they are worth learning about. I have come across Cairo, Athens, Zinc, Fuel, Spec, Grease and Shout - just as names, with no idea what they do and no obvious way of finding out. Is there any place where I can look these things up? They all exist in the Forum image that I downloaded today, but the system browser contains no general explanation. Peter Kenny PS I've just seen Stephan's reply while composing this. Thanks - it all gets a bit clearer. You might take my last paragraph above as my response to your last paragraph! -Original Message- From: Pharo-users [mailto:pharo-users-boun...@lists.pharo.org] On Behalf Of Esteban A. Maringolo Sent: 14 May 2014 13:30 To: Any question about pharo is welcome Subject: Re: [Pharo-users] Problem learning about Magritte 2014-05-14 9:25 GMT-03:00 PBK Research : > Stephan > Still, I am making progress with my original aim of learning about Magritte, > and there are many helpful people on this group, so you can just regard this > as me blowing off steam after things had not gone completely easily. Plus, you mention you're coming from Dolphin Smalltalk. Which is easier than the average, in terms of straightforwardness. Pharo has A LOT to offer, once you get used to aim at a moving target :) Esteban A. Maringolo
Re: [Pharo-users] Problem learning about Magritte
2014-05-14 12:15 GMT-03:00 PBK Research : > Esteban > > Well, I am carrying on, but I do wonder why Pharo has to be such a rapidly > moving target. There are virtues in stability, and perhaps there should be a > filtering process before any change is made, to ensure that the benefits > outweigh any disruption. Well... that might be related with the fact that Pharo "the kernel" is moving faster than many popular Pharo/Squeak libraries. > I must admit that, at times, Pharo looks like a > playground for a fairly small group of very clever people who are in love > with the process of development. I share your feelings about this. It is a playground AND a business platform, supported by very clever people who are in love with it. :) > But am sure that, if I could get the functions of > Magritte and PetitParser in a stable environment like Dolphin, I would drop > Pharo like a shot. Dolphin was (is?) a Smalltalk dialect built by only two clever developers during a long period of time, that built the entire codebase with a high level of coherence not found in other dialects, or software in general. Also, Andy Bower in particular was very skilled about designing user interactions. I always wonder how many people that uses Pharo ever used Dolphin. On the other hand, Pharo carries a lot of legacy code, some part was replaced and the remaining heritage is being replaced as much as possible by new code which is more consistent and coherent with the rest of the codebase. And not only it is rewritten for better understanding, but also to add new features. > While I am in a moaning mood - I'm not always like this! - could anyone tell > me whether there is a glossary of names for Pharo extensions which will tell > beginners like me what they are for and whether they are worth learning > about. I have come across Cairo, Athens, Zinc, Fuel, Spec, Grease and Shout > - just as names, with no idea what they do and no obvious way of finding > out. Is there any place where I can look these things up? They all exist in > the Forum image that I downloaded today, but the system browser contains no > general explanation. This is another thing that, IMO, has to do more with the latest naming trends in general (not only Pharo): You can't infer what is what only by its name. In the past it was all about acronyms, now that practice is almost abandoned, which is a good thing :) Regards, -- Esteban.
Re: [Pharo-users] Problem learning about Magritte
Peter wrote >Well, I am carrying on, but I do wonder why Pharo has to be such a rapidly >moving target. There are virtues in stability, and perhaps there should be a >filtering process before any change is made, to ensure that the benefits >outweigh any disruption. I must admit that, at times, Pharo looks like a >playground for a fairly small group of very clever people who are in love >with the process of development. There is virtue in stability as well as in innovation and in cleaning up. Pharo errs on the side of innovation and radical cleaning up. While doing that, we find out how to get better and faster at change. we do that by breaking things and then fixing them, trying to create as fast a feedback loop as possible. Squeak errs on the side of stability, trying to make things unloadable while keeping up compatibility. To work well with Pharo, as soon as possible set up a ci project in the inria infrastructure. That way you know when something gets broken (and the pharo core developers can see when they break something). A lot of the names are explained in Pharo by Example, Deep into Pharo and pharo for the enterprise https://github.com/SquareBracketAssociates/PharoForTheEnterprise-english In the Forum image are also parts of Moose (Glamour, Roassal). FOBrowser open FOTutorial open Stephan
Re: [Pharo-users] Problem learning about Magritte
On 14/5/14 14:25, PBK Research wrote: Stephan Thanks for the comment. I understand the point about development and things not always being in step. But if you look at it from my point of view, I am an elderly retired statistician who does programming for fun, you interest me :) I would love to get a nice statistic library for Pharo and to improve the SciTalk math library. I am not an expert in development and I am pretty new to Pharo. It all looks a maze of new terminology to me - I don't understand the difference between Monticello and Metacello, for instance. I am sure to an expert your explanation of how to check the correct version of Magritte3 is quite straightforward, but I would never have found my way to that conclusion myself. As I pointed out to Esteban, I used the configuration browser on 5 May to get the stable version of Magritte3. If that was already out of date, I am pretty well lost. Still, I am making progress with my original aim of learning about Magritte, and there are many helpful people on this group, so you can just regard this as me blowing off steam after things had not gone completely easily. Peter Kenny -Original Message- From: Pharo-users [mailto:pharo-users-boun...@lists.pharo.org] On Behalf Of Stephan Eggermont Sent: 14 May 2014 12:58 To: pharo-users@lists.pharo.org Subject: Re: [Pharo-users] Problem learning about Magritte Peter wrote: Thanks. I have Magritte-Morph in my image, but I wonder if anyone has debugged it. I send asMagritteMorph to a Magritte description and I get a MAContainerMorph, which is OK. Try sending openInWorld to this, and it falls over in MADescriptionMorph>>buildMorph, which calls MADescriptionMorph>>rectangleMorph, which tries to create an instance of the non-existent class RectangleMorph. Hmm, that looks like you have an old version of Magritte-Morph loaded. If you open the Monticello browser, you can select the Magritte-Morph package and then open its repository to see if there is a newer version. If you select a newer version and click Changes, you can see if this newer version is likely to solve your problem (it is). If you take a look at the ConfigurationOfMagritte3, you can see what goes wrong. version32 is the first one referring to a Magritte-Morph newer than version 70. stable: installs version311 however. So ConfigurationOfMagritte3 needs a new stable version. (Done) I have tried to trace this back, and it is true that my original Pharo 3.0 image, downloaded on 30 Apr 2014, does not have the class RectangleMorph. I have looked at older images, and the class exists. Maybe my mistake was to try to use the Pharo 3.0 image the day it was announced. Perhaps I would be better off using one of the pre-packed images you mention. Pharo 3 has lots of improvements and clean-ups. RectangleMorph behavior was folded back into BorderedMorph. The projects running on top of Pharo have different ideas of what should be stable and what development versions. The people developing them mostly use development releases or specific versions. If there are not a lot of non-developing users the stable version tends to lag behind. And if the specific problem is not in the tests, CI will not break. Just before the release, there are lots of fixes and the image changes fast. Not all projects will be able to synchronize fast, and have sufficient trust to declare a new version stable. So just after a release, you might have to use a lot of development versions, check repositories and ask questions on the mailing lists. Please do, that is the only way we can improve. My only worry is that there is a list of dozens of contributions on https://ci.inria.fr/pharo-contribution/, and unless you have far more knowledge than I have it is impossible to know which might be helpful. For now I will follow your hint and use the Forum image. That's a helpful comment. Thank you. We should improve the project descriptions (at least I should for mine). Stephan
Re: [Pharo-users] Problem learning about Magritte
On 14/5/14 17:15, PBK Research wrote: Esteban Well, I am carrying on, but I do wonder why Pharo has to be such a rapidly moving target. There are virtues in stability, and perhaps there should be a filtering process before any change is made, to ensure that the benefits outweigh any disruption. There is one. Now immobility is also death. I must admit that, at times, Pharo looks like a playground for a fairly small group of very clever people who are in love with the process of development. Pharo is not moving fast. The RectangleMorph has been removed months ago. Now if people do not maintain packages or maintain only what they use: this is not the fault of Pharo. Pharo is not a playground. We have companies deploying real software using Pharo. Now for some companies this is important to have - up to date technologies like vector graphics - clean (you know not always getting dirt in your way when you code) - easy to use version of Pharo and they value that we are moving. We do not move for the sake of it and we would prefer to have a clean and well designed system like dolphin was (which could never run on my machine) but people preferred "better dead than open-source" and they are dead sadly. I got involved with Pharo again recently - having looked at it briefly several years ago - because I had read papers, mainly by Lukas Renggli, about Magritte and PetitParser, and I thought these were brilliant ideas that I wanted to explore. But am sure that, if I could get the functions of Magritte and PetitParser in a stable environment like Dolphin, I would drop Pharo like a shot. Peter don't you feel that you are insulting us? if it makes you feel better good for you. You can use a Smalltalk running only on windows, that is dead (and of course it was really nice) but the people were against open-source and we believe that we prefer to have an open-source system that everybody can have a look than a close source working on a single OS developed by 1.5 developer. Because there were only two smart guys behind objectarts. Next time you insult Pharo and us I will just plonk your email (if you do not know what plonk means ask google). While I am in a moaning mood - I'm not always like this! - could anyone tell me whether there is a glossary of names for Pharo extensions which will tell beginners like me what they are for and whether they are worth learning about. I have come across Cairo, Athens, Zinc, Fuel, Spec, Grease and Shout - just as names, with no idea what they do and no obvious way of finding out. I have the answers but frankly you did not give me the will to tell that to you especially when I spent my FREE time and energy to write software and documentation for other people. Now you should learn how to ask questions in an open-source community. Now by insulting people: Cairo (ask google because this is mainstream), Athens (is a API for vector graphics with different back -end like cairo -hints hints), Zinc (HTTP server), Fuel (serializer), Spec (UIbuilder), Grease (Compatibility package) and Shout (Syntax Higlighter as you type). Is there any place where I can look these things up? They all exist in the Forum image that I downloaded today, but the system browser contains no general explanation. If you load the code using a configuration then placing the mouse on the configuration package will if the project got documented show you the description. Now you can find information on - the draft pharo catalog https://ci.inria.fr/pharo-contribution/job/PharoProjectCatalog/ - the draft of the new book https://ci.inria.fr/pharo-contribution/job/PharoForTheEnterprise/ - http://www.deepintopharo.org Stef Peter Kenny PS I've just seen Stephan's reply while composing this. Thanks - it all gets a bit clearer. You might take my last paragraph above as my response to your last paragraph! -Original Message- From: Pharo-users [mailto:pharo-users-boun...@lists.pharo.org] On Behalf Of Esteban A. Maringolo Sent: 14 May 2014 13:30 To: Any question about pharo is welcome Subject: Re: [Pharo-users] Problem learning about Magritte 2014-05-14 9:25 GMT-03:00 PBK Research : Stephan Still, I am making progress with my original aim of learning about Magritte, and there are many helpful people on this group, so you can just regard this as me blowing off steam after things had not gone completely easily. Plus, you mention you're coming from Dolphin Smalltalk. Which is easier than the average, in terms of straightforwardness. Pharo has A LOT to offer, once you get used to aim at a moving target :) Esteban A. Maringolo
Re: [Pharo-users] Problem learning about Magritte
On Wed, May 14, 2014 at 10:05 PM, stepharo wrote: > > On 14/5/14 14:25, PBK Research wrote: > >> Stephan >> >> Thanks for the comment. I understand the point about development and >> things >> not always being in step. But if you look at it from my point of view, I >> am >> an elderly retired statistician who does programming for fun, >> > > you interest me :) > I would love to get a nice statistic library for Pharo and to improve the > SciTalk > math library. > Check DHB. > >I am not an >> expert in development and I am pretty new to Pharo. It all looks a maze of >> new terminology to me - I don't understand the difference between >> Monticello >> and Metacello, for instance. I am sure to an expert your explanation of >> how >> to check the correct version of Magritte3 is quite straightforward, but I >> would never have found my way to that conclusion myself. As I pointed out >> to >> Esteban, I used the configuration browser on 5 May to get the stable >> version >> of Magritte3. If that was already out of date, I am pretty well lost. >> >> Still, I am making progress with my original aim of learning about >> Magritte, >> and there are many helpful people on this group, so you can just regard >> this >> as me blowing off steam after things had not gone completely easily. >> >> Peter Kenny >> >> -----Original Message- >> From: Pharo-users [mailto:pharo-users-boun...@lists.pharo.org] On Behalf >> Of >> Stephan Eggermont >> Sent: 14 May 2014 12:58 >> To: pharo-users@lists.pharo.org >> Subject: Re: [Pharo-users] Problem learning about Magritte >> >> Peter wrote: >> >>> Thanks. I have Magritte-Morph in my image, but I wonder if anyone has >>> debugged it. I send asMagritteMorph to a Magritte description and I get a >>> MAContainerMorph, which is OK. Try sending openInWorld to this, and it >>> >> falls >> >>> over in MADescriptionMorph>>buildMorph, which calls >>> MADescriptionMorph>>rectangleMorph, which tries to create an instance of >>> >> the >> >>> non-existent class RectangleMorph. >>> >> Hmm, that looks like you have an old version of Magritte-Morph loaded. >> If you open the Monticello browser, you can select the Magritte-Morph >> package and then open its repository to see if there is a newer version. >> If you select a newer version and click Changes, you can see if this >> newer version is likely to solve your problem (it is). >> >> If you take a look at the ConfigurationOfMagritte3, you can see what >> goes wrong. version32 is the first one referring to a Magritte-Morph >> newer than version 70. stable: installs version311 however. So >> ConfigurationOfMagritte3 needs a new stable version. (Done) >> >> I have tried to trace this back, and it is true that my original Pharo >>> 3.0 >>> image, downloaded on 30 Apr 2014, does not have the class >>> RectangleMorph. I >>> have looked at older images, and the class exists. Maybe my mistake was >>> to >>> try to use the Pharo 3.0 image the day it was announced. Perhaps I would >>> be >>> better off using one of the pre-packed images you mention. >>> >> Pharo 3 has lots of improvements and clean-ups. RectangleMorph behavior >> was folded back into BorderedMorph. The projects running on top of Pharo >> have different ideas of what should be stable and what development >> versions. The people developing them mostly use development releases >> or specific versions. If there are not a lot of non-developing users the >> stable version >> tends to lag behind. And if the specific problem is not in the tests, CI >> will not >> break. >> >> Just before the release, there are lots of fixes and the image changes >> fast. >> Not all projects will be able to synchronize fast, and have sufficient >> trust >> to declare a new version stable. So just after a release, you might have >> to >> use >> a lot of development versions, check repositories and ask questions on >> the mailing lists. Please do, that is the only way we can improve. >> >> My only worry is that there is a list of dozens of contributions on >>> https://ci.inria.fr/pharo-contribution/, and unless you have far more >>> knowledge than I have it is impossible to know which might be helpful. >>> For >>> now I will follow your hint and use the Forum image. >>> >> That's a helpful comment. Thank you. We should improve the project >> descriptions (at least I should for mine). >> >> Stephan >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> > > >
Re: [Pharo-users] Problem learning about Magritte
stepharo I was not setting out to insult anybody, and if you feel insulted by my comments then I apologise. I have had a frustrating couple of days, and I was trying to explain the source of my frustration. In some respects my problems are connected with the rate at which Pharo is changing; I was a bit niggled by Esteban Maringolo's comment about having to aim at a moving target, which I realise was meant light-heartedly, and I sounded off. One sort of frustration is exemplified by your comment that RectangleMorph was removed months ago, yet the version of Magritte3 that I got from the configuration browser last week had a method MADescriptionMorph>>rectangleMorph that called RectangleMorph. That has now been changed to BorderedMorph and it works OK, but it wasted a bit of my time finding out why. This may be the fault of the Magritte developers rather than the Pharo developers, but from the user's viewpoint this distinction is not obvious. I have made progress since I sent my messages earlier today; I can now see how to use Magritte (at an elementary level) to produce editors via Seaside in a web browser or as Pharo windows, which was one of my first objectives. I shall persevere with Pharo, and I shall try to read all the documentation thoroughly before asking questions here. Peter Kenny -Original Message- From: Pharo-users [mailto:pharo-users-boun...@lists.pharo.org] On Behalf Of stepharo Sent: 14 May 2014 21:22 To: Any question about pharo is welcome Subject: Re: [Pharo-users] Problem learning about Magritte On 14/5/14 17:15, PBK Research wrote: > Esteban > > Well, I am carrying on, but I do wonder why Pharo has to be such a rapidly > moving target. There are virtues in stability, and perhaps there should be a > filtering process before any change is made, to ensure that the benefits > outweigh any disruption. There is one. Now immobility is also death. > I must admit that, at times, Pharo looks like a > playground for a fairly small group of very clever people who are in love > with the process of development. Pharo is not moving fast. The RectangleMorph has been removed months ago. Now if people do not maintain packages or maintain only what they use: this is not the fault of Pharo. Pharo is not a playground. We have companies deploying real software using Pharo. Now for some companies this is important to have - up to date technologies like vector graphics - clean (you know not always getting dirt in your way when you code) - easy to use version of Pharo and they value that we are moving. We do not move for the sake of it and we would prefer to have a clean and well designed system like dolphin was (which could never run on my machine) but people preferred "better dead than open-source" and they are dead sadly. > > I got involved with Pharo again recently - having looked at it briefly > several years ago - because I had read papers, mainly by Lukas Renggli, > about Magritte and PetitParser, and I thought these were brilliant ideas > that I wanted to explore. But am sure that, if I could get the functions of > Magritte and PetitParser in a stable environment like Dolphin, I would drop > Pharo like a shot. Peter don't you feel that you are insulting us? if it makes you feel better good for you. You can use a Smalltalk running only on windows, that is dead (and of course it was really nice) but the people were against open-source and we believe that we prefer to have an open-source system that everybody can have a look than a close source working on a single OS developed by 1.5 developer. Because there were only two smart guys behind objectarts. Next time you insult Pharo and us I will just plonk your email (if you do not know what plonk means ask google). > > While I am in a moaning mood - I'm not always like this! - could anyone tell > me whether there is a glossary of names for Pharo extensions which will tell > beginners like me what they are for and whether they are worth learning > about. I have come across Cairo, Athens, Zinc, Fuel, Spec, Grease and Shout > - just as names, with no idea what they do and no obvious way of finding > out. I have the answers but frankly you did not give me the will to tell that to you especially when I spent my FREE time and energy to write software and documentation for other people. Now you should learn how to ask questions in an open-source community. Now by insulting people: Cairo (ask google because this is mainstream), Athens (is a API for vector graphics with different back -end like cairo -hints hints), Zinc (HTTP server), Fuel (serializer), Spec (UIbuilder), Grease (Compatibility package) and Shout (Syntax Higlighter as you type). > Is there any place where I can look these things up? They all exist in > the Forum image that I downloaded today, but the system browser contains no
Re: [Pharo-users] Problem learning about Magritte
Do not worry. We are here to (try) help you. And we will do it if it is in our capabilities... Yes, some times it is not enough, I understand, but then you have to be a bit patient, but we will get into the point to help :) As I told you some mails before, even the magritte-morph package was updated. What was not is the configuration. In fact, there is a configuration that works: version 3.2… is just that it was not promoted as stable. Now, why it was not promoted… is a problem of maintainers of the package, not pharo itself, ven if magritte is an important part of us, we cannot take responsibility of every single package that is published. And it is not a problem of just us, you will see that in many other platforms. We have a lot of people contributing (and I thank the good will spirits for that, and we would really like to count you in as a part of them), but one of the problems of being open is that you cannot control everything. Is a price to pay. The advantages are that you became a lot bigger that you would be by yourself (or closed). Now… communication is not out strongest part. Documentation either. We have to improve it, but it is not hard and it will take some time… in the mean time all what I can offer you is this great community. We are not perfect, we have a lot of failing stuff and things to improve. But we are always trying to help. Please keep pushing and we will respond. Other thing, to the maintainers of Magritte: Why is 3.2 not promoted? it is there since a couple of months now… cheers, Esteban On 14 May 2014, at 23:32, PBK Research wrote: > stepharo > > I was not setting out to insult anybody, and if you feel insulted by my > comments then I apologise. I have had a frustrating couple of days, and I > was trying to explain the source of my frustration. In some respects my > problems are connected with the rate at which Pharo is changing; I was a bit > niggled by Esteban Maringolo's comment about having to aim at a moving > target, which I realise was meant light-heartedly, and I sounded off. > > One sort of frustration is exemplified by your comment that RectangleMorph > was removed months ago, yet the version of Magritte3 that I got from the > configuration browser last week had a method > MADescriptionMorph>>rectangleMorph that called RectangleMorph. That has now > been changed to BorderedMorph and it works OK, but it wasted a bit of my > time finding out why. This may be the fault of the Magritte developers > rather than the Pharo developers, but from the user's viewpoint this > distinction is not obvious. > > I have made progress since I sent my messages earlier today; I can now see > how to use Magritte (at an elementary level) to produce editors via Seaside > in a web browser or as Pharo windows, which was one of my first objectives. > I shall persevere with Pharo, and I shall try to read all the documentation > thoroughly before asking questions here. > > Peter Kenny > > -Original Message- > From: Pharo-users [mailto:pharo-users-boun...@lists.pharo.org] On Behalf Of > stepharo > Sent: 14 May 2014 21:22 > To: Any question about pharo is welcome > Subject: Re: [Pharo-users] Problem learning about Magritte > > > On 14/5/14 17:15, PBK Research wrote: >> Esteban >> >> Well, I am carrying on, but I do wonder why Pharo has to be such a rapidly >> moving target. There are virtues in stability, and perhaps there should be > a >> filtering process before any change is made, to ensure that the benefits >> outweigh any disruption. > There is one. Now immobility is also death. >> I must admit that, at times, Pharo looks like a >> playground for a fairly small group of very clever people who are in love >> with the process of development. > > Pharo is not moving fast. The RectangleMorph has been removed months ago. > Now if people do not maintain packages or maintain only what they use: > this is not the > fault of Pharo. > > Pharo is not a playground. We have companies deploying real software > using Pharo. > Now for some companies this is important to have > - up to date technologies like vector graphics > - clean (you know not always getting dirt in your way when you code) > - easy to use > version of Pharo and they value that we are moving. > We do not move for the sake of it and we would prefer to have a clean > and well designed system like dolphin was (which could never run on my > machine) but people preferred "better dead than open-source" and they > are dead sadly. > >> >> I got involved with Pharo again recently - having looked at it briefly >> several years ago - because I had read papers, mainly by Lukas Renggli, >> about Magritte and PetitParser, and
Re: [Pharo-users] Problem learning about Magritte
EstebanLM wrote >Other thing, to the maintainers of Magritte: Why is 3.2 not promoted? it is >there since a couple of months now… It should be fixed first. Grease stable is 1.1.8, and 3.2 refers to 1.1.6. Lots of configurations use references to #stable of Grease. That does not combine well with configurations using numbered versions. We are working on tooling to check configurations Stephan