[Pharo-project] ConfigurationOfAlien
Hi, just added ConfigurationOfAlien to the MetacelloRepository. To load Alien using Metacello configurations evaluate Gofer new url: 'http://www.squeaksource.com/MetacelloRepository' ; package: 'ConfigurationOfAlien'; load. (ConfigurationOfAlien project version:'1.0') load. ( John please update the ALIEN squeaksource page with the previous text ) Note: Using the available MAC VM i the pharo page, you should be able to run the test correctly. ( the alien plugin 'IA32ABI 7 May 2009 (e)', is compiled inside that vm, there's no need for the external one) Metacello question: If i want load Alien Examples, the package Alien-MacOSExamples, but don't want to add them to the above configuration , should i create a new #versionXXX method ? Or provide a class side method like for example ConfigurationOfAlien>>loadWithMaxOsExamples (ConfigurationOfAlien project version:'1.0') load:#('Alien-MacOsExamples') Saludos, Fernando
That's great news, at least for mac users. What does a penguin herder do to get a plugin? Would it be easier to use a squeak image to build it? Bill -----Original Message----- From: pharo-project-bounces@lists.gforge.inria.fr [mailto:pharo-project-bounces@lists.gforge.inria.fr] On Behalf Of Fernando olivero Sent: Wednesday, January 13, 2010 11:43 AM To: Pharo-project@lists.gforge.inria.fr Development Subject: [Pharo-project] ConfigurationOfAlien Hi, just added ConfigurationOfAlien to the MetacelloRepository. To load Alien using Metacello configurations evaluate Gofer new url: 'http://www.squeaksource.com/MetacelloRepository' ; package: 'ConfigurationOfAlien'; load. (ConfigurationOfAlien project version:'1.0') load. ( John please update the ALIEN squeaksource page with the previous text ) Note: Using the available MAC VM i the pharo page, you should be able to run the test correctly. ( the alien plugin 'IA32ABI 7 May 2009 (e)', is compiled inside that vm, there's no need for the external one) Metacello question: If i want load Alien Examples, the package Alien-MacOSExamples, but don't want to add them to the above configuration , should i create a new #versionXXX method ? Or provide a class side method like for example ConfigurationOfAlien>>loadWithMaxOsExamples (ConfigurationOfAlien project version:'1.0') load:#('Alien-MacOsExamples') Saludos, Fernando _______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
On Jan 13, 2010, at 6:06 53PM, Schwab,Wilhelm K wrote:
That's great news, at least for mac users. What does a penguin herder do to get a plugin?
1) Download VM sources for latest release from www.squeakvm.org. 2) Make an image with VMMaker and AlienPlugin. 3) Use VMMakerTool to generate AlienPlugin sources. 4) (possibly) use special sqVirtualMachine.c/h from the \Cross\plugins\IA32ABI folder. 5) Try to compile, fix errors that pop up. 6) Repeat step5 enough times that you end up with a compiled plugin.
Would it be easier to use a squeak image to build it? Only step 2, unless you load from www.squeaksource.org/JBARepo, and run VMMakerLoader loadAndFix.
Cheers, Henry
On Wed, 13 Jan 2010, Henrik Johansen wrote:
On Jan 13, 2010, at 6:06 53PM, Schwab,Wilhelm K wrote:
That's great news, at least for mac users. What does a penguin herder do to get a plugin?
1) Download VM sources for latest release from www.squeakvm.org. 2) Make an image with VMMaker and AlienPlugin. 3) Use VMMakerTool to generate AlienPlugin sources. 4) (possibly) use special sqVirtualMachine.c/h from the \Cross\plugins\IA32ABI folder. 5) Try to compile, fix errors that pop up. 6) Repeat step5 enough times that you end up with a compiled plugin.
7) Run the tests and wonder why your plugin doesn't work. Repeat 1-7 a few times. 8) Give up and wait till someone else succeeds.
Would it be easier to use a squeak image to build it? Only step 2, unless you load from www.squeaksource.org/JBARepo, and run VMMakerLoader loadAndFix.
I wonder why are these packages forked. Levente
Cheers, Henry _______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
On Jan 13, 2010, at 7:00 23PM, Levente Uzonyi wrote:
On Wed, 13 Jan 2010, Henrik Johansen wrote:
On Jan 13, 2010, at 6:06 53PM, Schwab,Wilhelm K wrote:
That's great news, at least for mac users. What does a penguin herder do to get a plugin?
1) Download VM sources for latest release from www.squeakvm.org. 2) Make an image with VMMaker and AlienPlugin. 3) Use VMMakerTool to generate AlienPlugin sources. 4) (possibly) use special sqVirtualMachine.c/h from the \Cross\plugins\IA32ABI folder. 5) Try to compile, fix errors that pop up. 6) Repeat step5 enough times that you end up with a compiled plugin.
7) Run the tests and wonder why your plugin doesn't work. Repeat 1-7 a few times. 8) Give up and wait till someone else succeeds.
Well, yes.
Would it be easier to use a squeak image to build it? Only step 2, unless you load from www.squeaksource.org/JBARepo, and run VMMakerLoader loadAndFix.
I wonder why are these packages forked.
It's not really forked, just installing versions different to what is in VMMaker repository that needs to be changed to work with Pharo. In specific, the two I remember: - One of the methods specified in MiscPrimitivePlugin didn't work/return an error for WideStrings. The solution in Pharo was to introduce an extra layer of indirection, since the method itself was called many places, the original definition was moved to a method called ...viaPrimitive (should be renamed prim...), and handling introduced before prim call was made. (using fallback instead if param was WideString). - One of the methods used by VMMaker had a spelling error, which has been fixed in Pharo, something with occurrencesOf: I think. Cheers, Henry
On Jan 13, 2010, at 7:00 PM, Levente Uzonyi wrote:
On Wed, 13 Jan 2010, Henrik Johansen wrote:
On Jan 13, 2010, at 6:06 53PM, Schwab,Wilhelm K wrote:
That's great news, at least for mac users. What does a penguin herder do to get a plugin?
1) Download VM sources for latest release from www.squeakvm.org. 2) Make an image with VMMaker and AlienPlugin. 3) Use VMMakerTool to generate AlienPlugin sources. 4) (possibly) use special sqVirtualMachine.c/h from the \Cross\plugins\IA32ABI folder. 5) Try to compile, fix errors that pop up. 6) Repeat step5 enough times that you end up with a compiled plugin.
7) Run the tests and wonder why your plugin doesn't work. Repeat 1-7 a few times. 8) Give up and wait till someone else succeeds.
Would it be easier to use a squeak image to build it? Only step 2, unless you load from www.squeaksource.org/JBARepo, and run VMMakerLoader loadAndFix.
probably because JB was fighting in his corner against the dragon and did not dare to fucked up the VMMaker repository After the paper we are writing I will ask him to take action and to ask if people wants his stuff.
I wonder why are these packages forked.
Levente
Cheers, Henry _______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
On 13.01.2010 22:25, Stéphane Ducasse wrote:
On Jan 13, 2010, at 7:00 PM, Levente Uzonyi wrote:
On Wed, 13 Jan 2010, Henrik Johansen wrote:
On Jan 13, 2010, at 6:06 53PM, Schwab,Wilhelm K wrote:
That's great news, at least for mac users. What does a penguin herder do to get a plugin?
1) Download VM sources for latest release from www.squeakvm.org. 2) Make an image with VMMaker and AlienPlugin. 3) Use VMMakerTool to generate AlienPlugin sources. 4) (possibly) use special sqVirtualMachine.c/h from the \Cross\plugins\IA32ABI folder. 5) Try to compile, fix errors that pop up. 6) Repeat step5 enough times that you end up with a compiled plugin.
7) Run the tests and wonder why your plugin doesn't work. Repeat 1-7 a few times. 8) Give up and wait till someone else succeeds.
Would it be easier to use a squeak image to build it?
Only step 2, unless you load from www.squeaksource.org/JBARepo, and run VMMakerLoader loadAndFix.
probably because JB was fighting in his corner against the dragon and did not dare to fucked up the VMMaker repository After the paper we are writing I will ask him to take action and to ask if people wants his stuff.
The changes he made are specific to changes made in Pharo, getting them commited to VMMaker will be hard without having Squeak adopt them as well. As far as I remember, Andreas for one was not against changing ByteString class >> findSubstring;in:startingAt:matchTable: to primFindSubstring, and changing findSubstring... to a non-primitive-invoking method that does delegation, although I believe the bug has already been handled differently (ie. the senders have been changed to do the check instead) in Trunk. As for the spelling correction, the method is still called findLastOccuranceOfString:startingAt: in Trunk, should be simple enough to rename it findLastOccurrenceOfString:startingAt: and keep the old version for backwards-compatability if deemed necessary. Cheers, Henry
2010/1/13 Henrik Sperre Johansen <henrik.s.johansen@veloxit.no>:
On 13.01.2010 22:25, Stéphane Ducasse wrote:
On Jan 13, 2010, at 7:00 PM, Levente Uzonyi wrote:
On Wed, 13 Jan 2010, Henrik Johansen wrote:
On Jan 13, 2010, at 6:06 53PM, Schwab,Wilhelm K wrote:
That's great news, at least for mac users. Â What does a penguin herder do to get a plugin?
1) Download VM sources for latest release from www.squeakvm.org. 2) Make an image with VMMaker and AlienPlugin. 3) Use VMMakerTool to generate AlienPlugin sources. 4) (possibly) use special sqVirtualMachine.c/h from  the \Cross\plugins\IA32ABI folder. 5) Try to compile, fix errors that pop up. 6) Repeat step5 enough times that you end up with a compiled plugin.
7) Run the tests and wonder why your plugin doesn't work. Repeat 1-7 a few times. 8) Give up and wait till someone else succeeds.
Would it be easier to use a squeak image to build it?
Only step 2, unless you load from  www.squeaksource.org/JBARepo, and run VMMakerLoader loadAndFix.
probably because JB was fighting in his corner against the dragon and did not dare to fucked up the VMMaker repository After the paper we are writing I will ask him to take action and to ask if people wants his stuff.
The changes he made are specific to changes made in Pharo, getting them commited to VMMaker will be hard without having Squeak adopt them as well.
As far as I remember, Andreas for one was not against changing ByteString class >> Â findSubstring;in:startingAt:matchTable: to primFindSubstring, and changing findSubstring... to a non-primitive-invoking method that does delegation, although I believe the bug has already been handled differently (ie. the senders have been changed to do the check instead) in Trunk.
As for the spelling correction, the method is still called findLastOccuranceOfString:startingAt: in Trunk, should be simple enough to rename it findLastOccurrenceOfString:startingAt: Â and keep the old version for backwards-compatability if deemed necessary.
Oh this one is already ported in trunk findLastOccuranceOfString: subString startingAt: start self deprecated: 'Use instead #findLastOccurrenceOfString:startingAt:'. ^ self findLastOccurrenceOfString: subString startingAt: start
Cheers, Henry
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
On 13.01.2010 22:58, Nicolas Cellier wrote:
2010/1/13 Henrik Sperre Johansen<henrik.s.johansen@veloxit.no>:
As for the spelling correction, the method is still called findLastOccuranceOfString:startingAt: in Trunk, should be simple enough to rename it findLastOccurrenceOfString:startingAt: and keep the old version for backwards-compatability if deemed necessary.
Oh this one is already ported in trunk findLastOccuranceOfString: subString startingAt: start self deprecated: 'Use instead #findLastOccurrenceOfString:startingAt:'. ^ self findLastOccurrenceOfString: subString startingAt: start
Sweet, I was browsing an old version then :D
On Wed, Jan 13, 2010 at 5:43 PM, Fernando olivero <oliverof@lu.unisi.ch>wrote:
Hi, just added ConfigurationOfAlien to the MetacelloRepository.
To load Alien using Metacello configurations evaluate
Gofer new url: 'http://www.squeaksource.com/MetacelloRepository' ; package: 'ConfigurationOfAlien'; load. (ConfigurationOfAlien project version:'1.0') load.
( John please update the ALIEN squeaksource page with the previous text )
Excellent!!!! Hi Fernando: I checked the Conf, I hope you don't bother if I give you some feedback. In version1: try to put mostly only versions. Static information like spec package: 'Alien-Core' with: [ spec requires: #( 'Alien-Prereqs' ) ]. would be better to put them in the baseline. All static and structure information (groups, requieres, etc) should go in baseline. And in version, only versions, author, date, description, blessing, etc. Post and preload for exaple, it depends. Is they are likely to be always the same, put them in baseline. If they are particular for a version, put them in version. In your case I think they should go on baseline. You didn't put the dependency from Alien-CoreTest to Alien. Think that every package should be perfectly loaded. So, if Alien-CoreTest depends on Alien-Core, then, you have to put it. The same with the examples.
Note: Using the available MAC VM i the pharo page, you should be able to run the test correctly. ( the alien plugin 'IA32ABI 7 May 2009 (e)', is compiled inside that vm, there's no need for the external one)
Metacello question:
If i want load Alien Examples, the package Alien-MacOSExamples, but don't want to add them to the above configuration , should i create a new #versionXXX method ?
Or provide a class side method like for example
ConfigurationOfAlien>>loadWithMaxOsExamples (ConfigurationOfAlien project version:'1.0') load:#('Alien-MacOsExamples')
In my opinion, neither. I would use groups for this. Something like this in baseline mehtod: spec group: 'default' with: #('Core' ); group: 'Core' with: #( 'Alien-Core' ); group: 'Tests' with: #( 'Alien-CoreTest' ); group: 'Examples' with: #('Alien-MacOSExamples' ); Then to load the project, you can evaluate: (ConfigurationOfAlien project version: 'xxxx') load (this will install the default, which is core) (ConfigurationOfAlien project version: 'xxxx') load: 'Tests' will load that group or: (ConfigurationOfAlien project version: 'xxxx') load: #('Core' 'Tests' 'Examples' ) and will load everything. For more information you can look in MetacelloRepository, there are a lot of examples. Cheers Mariano
Saludos, Fernando _______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Thanks Mariano! I was hoping you gave me feedback on Metacelllo usage! I really think it would usefull to have this info, available in the Metacello tutorial or the web page. To provide examples of usage. Fernando On Jan 13, 2010, at 6:46 PM, Mariano Martinez Peck wrote:
On Wed, Jan 13, 2010 at 5:43 PM, Fernando olivero <oliverof@lu.unisi.ch> wrote: Hi, just added ConfigurationOfAlien to the MetacelloRepository.
To load Alien using Metacello configurations evaluate
Gofer new url: 'http://www.squeaksource.com/MetacelloRepository' ; package: 'ConfigurationOfAlien'; load. (ConfigurationOfAlien project version:'1.0') load.
( John please update the ALIEN squeaksource page with the previous text )
Excellent!!!!
Hi Fernando: I checked the Conf, I hope you don't bother if I give you some feedback.
In version1: try to put mostly only versions. Static information like spec package: 'Alien-Core' with: [ spec requires: #( 'Alien-Prereqs' ) ]. would be better to put them in the baseline. All static and structure information (groups, requieres, etc) should go in baseline. And in version, only versions, author, date, description, blessing, etc. Post and preload for exaple, it depends. Is they are likely to be always the same, put them in baseline. If they are particular for a version, put them in version. In your case I think they should go on baseline.
You didn't put the dependency from Alien-CoreTest to Alien. Think that every package should be perfectly loaded. So, if Alien-CoreTest depends on Alien-Core, then, you have to put it. The same with the examples.
Note: Using the available MAC VM i the pharo page, you should be able to run the test correctly. ( the alien plugin 'IA32ABI 7 May 2009 (e)', is compiled inside that vm, there's no need for the external one)
Metacello question:
If i want load Alien Examples, the package Alien-MacOSExamples, but don't want to add them to the above configuration , should i create a new #versionXXX method ?
Or provide a class side method like for example
ConfigurationOfAlien>>loadWithMaxOsExamples (ConfigurationOfAlien project version:'1.0') load:#('Alien-MacOsExamples')
In my opinion, neither. I would use groups for this. Something like this in baseline mehtod:
spec group: 'default' with: #('Core' ); group: 'Core' with: #( 'Alien-Core' ); group: 'Tests' with: #( 'Alien-CoreTest' ); group: 'Examples' with: #('Alien-MacOSExamples' );
Then to load the project, you can evaluate:
(ConfigurationOfAlien project version: 'xxxx') load
(this will install the default, which is core)
(ConfigurationOfAlien project version: 'xxxx') load: 'Tests'
will load that group
or:
(ConfigurationOfAlien project version: 'xxxx') load: #('Core' 'Tests' 'Examples' )
and will load everything.
For more information you can look in MetacelloRepository, there are a lot of examples.
Cheers
Mariano
Saludos, Fernando _______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
<ATT00001..txt>
On 2010-01-13, at 8:43 AM, Fernando olivero wrote:
To load Alien using Metacello configurations evaluate
Gofer new url: 'http://www.squeaksource.com/MetacelloRepository' ; package: 'ConfigurationOfAlien'; load. (ConfigurationOfAlien project version:'1.0') load.
( John please update the ALIEN squeaksource page with the previous text )
Done -- =========================================================================== John M. McIntosh <johnmci@smalltalkconsulting.com> Twitter: squeaker68882 Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com ===========================================================================
Hi all, From a freshly updated 11151->11156 after (ConfigurationOfAlien project version:'1.0') load. I've Array DNU createMethod:header: and can't open debugger anymore. see screenshot. Maybe ConfigurationOfAlien/Alien is(are) only for 1.0 ? Sorry if I missed something. Cheers Alain Fernando olivero a écrit :
Hi, just added ConfigurationOfAlien to the MetacelloRepository.
To load Alien using Metacello configurations evaluate
Gofer new url: 'http://www.squeaksource.com/MetacelloRepository' ; package: 'ConfigurationOfAlien'; load. (ConfigurationOfAlien project version:'1.0') load.
( John please update the ALIEN squeaksource page with the previous text )
Note: Using the available MAC VM i the pharo page, you should be able to run the test correctly. ( the alien plugin 'IA32ABI 7 May 2009 (e)', is compiled inside that vm, there's no need for the external one)
Metacello question:
If i want load Alien Examples, the package Alien-MacOSExamples, but don't want to add them to the above configuration , should i create a new #versionXXX method ?
Or provide a class side method like for example
ConfigurationOfAlien>>loadWithMaxOsExamples (ConfigurationOfAlien project version:'1.0') load:#('Alien-MacOsExamples')
Saludos, Fernando _______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Alain, thanks for pointing this out. I've tried with the latest dev images, and it works there. In the core images it doesn't. as you found out. Anybody have a clue why? I dont have time to track down why at the moment, but will do in the future. Fernando On Jan 14, 2010, at 9:19 AM, Alain Plantec wrote:
Hi all,
From a freshly updated 11151->11156 after
(ConfigurationOfAlien project version:'1.0') load.
I've Array DNU createMethod:header: and can't open debugger anymore.
see screenshot.
Maybe ConfigurationOfAlien/Alien is(are) only for 1.0 ? Sorry if I missed something.
Cheers Alain
Fernando olivero a écrit :
Hi, just added ConfigurationOfAlien to the MetacelloRepository.
To load Alien using Metacello configurations evaluate
Gofer new url: 'http://www.squeaksource.com/MetacelloRepository' ; package: 'ConfigurationOfAlien'; load. (ConfigurationOfAlien project version:'1.0') load.
( John please update the ALIEN squeaksource page with the previous text )
Note: Using the available MAC VM i the pharo page, you should be able to run the test correctly. ( the alien plugin 'IA32ABI 7 May 2009 (e)', is compiled inside that vm, there's no need for the external one)
Metacello question:
If i want load Alien Examples, the package Alien-MacOSExamples, but don't want to add them to the above configuration , should i create a new #versionXXX method ?
Or provide a class side method like for example
ConfigurationOfAlien>>loadWithMaxOsExamples (ConfigurationOfAlien project version:'1.0') load:#('Alien-MacOsExamples')
Saludos, Fernando _______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
<Capture.png><ATT00001..txt>
participants (10)
-
Alain Plantec -
Fernando olivero -
Henrik Johansen -
Henrik Sperre Johansen -
John M McIntosh -
Levente Uzonyi -
Mariano Martinez Peck -
Nicolas Cellier -
Schwab,Wilhelm K -
Stéphane Ducasse