petit parser on gemstone?

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
28 messages Options
12
Reply | Threaded
Open this post in threaded view
|

Re: petit parser on gemstone?

EstebanLM
I was having  a UUID plugin error :P
now it loads, with some "radical" changes: I removed PPAnalyzerTest because there were an error compiling PPAnalyzerTest class>>#grammarC and I couldn't realize what's the problem.  

Now... there are problems on PPStream and it is not working :(

Anyway, I will continue tomorrow.

Cheers,
Esteban


El 22/06/2011, a las 1:28p.m., Dale Henrichs escribió:

> Well this is a new one ...
>
> The UUID for ConfigurationOfPetitParser-EstebanLorenzano.17 and PetitTests-EstebanLorenzano.33 are both 'da390300-18a4-2802-80d7-0e00d0f65c1f'.
>
> GemStone uses a MCDictionaryRepository as the cache repository which means that equality is used to compare keys ... since those two packages have the same UUID, PetitTests-EstebanLorenzano.33 is stored in the value of the association whose key is ConfigurationOfPetitParser-EstebanLorenzano.17 and is therefore effectively hidden when a lookup is done using the name of the versionInfo, instead of the UUID ...
>
> So much for unique ID, huh?
>
> Here's the tale of the tape from GemSource:
>
> Filename: ConfigurationOfPetitParser-EstebanLorenzano.17.mcz
> Author: Esteban Lorenzano
> Timestamp: 22 June 2011 07:35:03
> UUID: 2185730241644021282151402082469231
> Ancestors: ConfigurationOfPetitParser-AlexandreBergel.16.mcz
> Message: ported to gemstone
> Downloads: Web: 7
>
> Filename: PetitTests-EstebanLorenzano.33.mcz
> Author: Esteban Lorenzano
> Timestamp: 22 June 2011 07:30:16
> UUID: 2185730241644021282151402082469231
> Ancestors: PetitTests-lr.32.mcz
> Message: -changed ==> and >=> to => and ><
> Downloads: Web: 23
>
> So it looks like if you do another commit of either ConfigurationOfPetitParser or PetitTests, then the UUID collision will go away ...
>
> But wait, the same UUID is shared amongst several more packages!:
>
> Filename: PetitXPath-EstebanLorenzano.2.mcz
> Author: Esteban Lorenzano
> Timestamp: 22 June 2011 07:31:48
> UUID: 2185730241644021282151402082469231
> Ancestors: PetitXPath-EstebanLorenzano.1.mcz
> Message: -changed ==> and >=> to => and ><
> Downloads: Web: 12
>
>
> Filename: PetitCSV-EstebanLorenzano.8.mcz
> Author: Esteban Lorenzano
> Timestamp: 22 June 2011 07:31:11
> UUID: 2185730241644021282151402082469231
> Ancestors: PetitCSV-tg.7.mcz
> Message: -changed ==> and >=> to => and ><
> Downloads: Web: 7
>
>
> Filename: PetitAnalyzer-EstebanLorenzano.39.mcz
> Author: Esteban Lorenzano
> Timestamp: 22 June 2011 07:30:44
> UUID: 2185730241644021282151402082469231
> Ancestors: PetitAnalyzer-lr.38.mcz
> Message: -changed ==> and >=> to => and ><
> Downloads: Web: 17

Reply | Threaded
Open this post in threaded view
|

Re: petit parser on gemstone?

Dale Henrichs
PPStream ... hmm ... in 2.4 PositionStream uses #itsCollection instead of collection and the value of #position is not ANSI compliant ... ANSIReadStream and ANSIWriteStream can be used to get ansi compliant #position ... no easy answer for #itsCollection ... it seems that most people subclassing PositionableStream tend to access the #collection instance variable directly:(

In 3.0 we have a portable PositionStream implementation that is compatible with Pharo (and everyone else) as well as retaining the legacy implementation ... we'll also have fixes for the binary selector issue in 3.0, but that won't help you now.

Dale

----- Original Message -----
| From: "Esteban Lorenzano" <[hidden email]>
| To: "GemStone Seaside beta discussion" <[hidden email]>
| Sent: Wednesday, June 22, 2011 11:20:22 AM
| Subject: Re: [GS/SS Beta] petit parser on gemstone?
|
| I was having  a UUID plugin error :P
| now it loads, with some "radical" changes: I removed PPAnalyzerTest
| because there were an error compiling PPAnalyzerTest
| class>>#grammarC and I couldn't realize what's the problem.
|
| Now... there are problems on PPStream and it is not working :(
|
| Anyway, I will continue tomorrow.
|
| Cheers,
| Esteban
|
|
| El 22/06/2011, a las 1:28p.m., Dale Henrichs escribió:
|
| > Well this is a new one ...
| >
| > The UUID for ConfigurationOfPetitParser-EstebanLorenzano.17 and
| > PetitTests-EstebanLorenzano.33 are both
| > 'da390300-18a4-2802-80d7-0e00d0f65c1f'.
| >
| > GemStone uses a MCDictionaryRepository as the cache repository
| > which means that equality is used to compare keys ... since those
| > two packages have the same UUID, PetitTests-EstebanLorenzano.33 is
| > stored in the value of the association whose key is
| > ConfigurationOfPetitParser-EstebanLorenzano.17 and is therefore
| > effectively hidden when a lookup is done using the name of the
| > versionInfo, instead of the UUID ...
| >
| > So much for unique ID, huh?
| >
| > Here's the tale of the tape from GemSource:
| >
| > Filename: ConfigurationOfPetitParser-EstebanLorenzano.17.mcz
| > Author: Esteban Lorenzano
| > Timestamp: 22 June 2011 07:35:03
| > UUID: 2185730241644021282151402082469231
| > Ancestors: ConfigurationOfPetitParser-AlexandreBergel.16.mcz
| > Message: ported to gemstone
| > Downloads: Web: 7
| >
| > Filename: PetitTests-EstebanLorenzano.33.mcz
| > Author: Esteban Lorenzano
| > Timestamp: 22 June 2011 07:30:16
| > UUID: 2185730241644021282151402082469231
| > Ancestors: PetitTests-lr.32.mcz
| > Message: -changed ==> and >=> to => and ><
| > Downloads: Web: 23
| >
| > So it looks like if you do another commit of either
| > ConfigurationOfPetitParser or PetitTests, then the UUID collision
| > will go away ...
| >
| > But wait, the same UUID is shared amongst several more packages!:
| >
| > Filename: PetitXPath-EstebanLorenzano.2.mcz
| > Author: Esteban Lorenzano
| > Timestamp: 22 June 2011 07:31:48
| > UUID: 2185730241644021282151402082469231
| > Ancestors: PetitXPath-EstebanLorenzano.1.mcz
| > Message: -changed ==> and >=> to => and ><
| > Downloads: Web: 12
| >
| >
| > Filename: PetitCSV-EstebanLorenzano.8.mcz
| > Author: Esteban Lorenzano
| > Timestamp: 22 June 2011 07:31:11
| > UUID: 2185730241644021282151402082469231
| > Ancestors: PetitCSV-tg.7.mcz
| > Message: -changed ==> and >=> to => and ><
| > Downloads: Web: 7
| >
| >
| > Filename: PetitAnalyzer-EstebanLorenzano.39.mcz
| > Author: Esteban Lorenzano
| > Timestamp: 22 June 2011 07:30:44
| > UUID: 2185730241644021282151402082469231
| > Ancestors: PetitAnalyzer-lr.38.mcz
| > Message: -changed ==> and >=> to => and ><
| > Downloads: Web: 17
|
|
Reply | Threaded
Open this post in threaded view
|

Re: petit parser on gemstone?

EstebanLM
I'm just finishing an ugly hack that makes PPStream (and all petit parser) work :P

El 23/06/2011, a las 12:31p.m., Dale Henrichs escribió:

> PPStream ... hmm ... in 2.4 PositionStream uses #itsCollection instead of collection and the value of #position is not ANSI compliant ... ANSIReadStream and ANSIWriteStream can be used to get ansi compliant #position ... no easy answer for #itsCollection ... it seems that most people subclassing PositionableStream tend to access the #collection instance variable directly:(
>
> In 3.0 we have a portable PositionStream implementation that is compatible with Pharo (and everyone else) as well as retaining the legacy implementation ... we'll also have fixes for the binary selector issue in 3.0, but that won't help you now.
>
> Dale
>
> ----- Original Message -----
> | From: "Esteban Lorenzano" <[hidden email]>
> | To: "GemStone Seaside beta discussion" <[hidden email]>
> | Sent: Wednesday, June 22, 2011 11:20:22 AM
> | Subject: Re: [GS/SS Beta] petit parser on gemstone?
> |
> | I was having  a UUID plugin error :P
> | now it loads, with some "radical" changes: I removed PPAnalyzerTest
> | because there were an error compiling PPAnalyzerTest
> | class>>#grammarC and I couldn't realize what's the problem.
> |
> | Now... there are problems on PPStream and it is not working :(
> |
> | Anyway, I will continue tomorrow.
> |
> | Cheers,
> | Esteban
> |
> |
> | El 22/06/2011, a las 1:28p.m., Dale Henrichs escribió:
> |
> | > Well this is a new one ...
> | >
> | > The UUID for ConfigurationOfPetitParser-EstebanLorenzano.17 and
> | > PetitTests-EstebanLorenzano.33 are both
> | > 'da390300-18a4-2802-80d7-0e00d0f65c1f'.
> | >
> | > GemStone uses a MCDictionaryRepository as the cache repository
> | > which means that equality is used to compare keys ... since those
> | > two packages have the same UUID, PetitTests-EstebanLorenzano.33 is
> | > stored in the value of the association whose key is
> | > ConfigurationOfPetitParser-EstebanLorenzano.17 and is therefore
> | > effectively hidden when a lookup is done using the name of the
> | > versionInfo, instead of the UUID ...
> | >
> | > So much for unique ID, huh?
> | >
> | > Here's the tale of the tape from GemSource:
> | >
> | > Filename: ConfigurationOfPetitParser-EstebanLorenzano.17.mcz
> | > Author: Esteban Lorenzano
> | > Timestamp: 22 June 2011 07:35:03
> | > UUID: 2185730241644021282151402082469231
> | > Ancestors: ConfigurationOfPetitParser-AlexandreBergel.16.mcz
> | > Message: ported to gemstone
> | > Downloads: Web: 7
> | >
> | > Filename: PetitTests-EstebanLorenzano.33.mcz
> | > Author: Esteban Lorenzano
> | > Timestamp: 22 June 2011 07:30:16
> | > UUID: 2185730241644021282151402082469231
> | > Ancestors: PetitTests-lr.32.mcz
> | > Message: -changed ==> and >=> to => and ><
> | > Downloads: Web: 23
> | >
> | > So it looks like if you do another commit of either
> | > ConfigurationOfPetitParser or PetitTests, then the UUID collision
> | > will go away ...
> | >
> | > But wait, the same UUID is shared amongst several more packages!:
> | >
> | > Filename: PetitXPath-EstebanLorenzano.2.mcz
> | > Author: Esteban Lorenzano
> | > Timestamp: 22 June 2011 07:31:48
> | > UUID: 2185730241644021282151402082469231
> | > Ancestors: PetitXPath-EstebanLorenzano.1.mcz
> | > Message: -changed ==> and >=> to => and ><
> | > Downloads: Web: 12
> | >
> | >
> | > Filename: PetitCSV-EstebanLorenzano.8.mcz
> | > Author: Esteban Lorenzano
> | > Timestamp: 22 June 2011 07:31:11
> | > UUID: 2185730241644021282151402082469231
> | > Ancestors: PetitCSV-tg.7.mcz
> | > Message: -changed ==> and >=> to => and ><
> | > Downloads: Web: 7
> | >
> | >
> | > Filename: PetitAnalyzer-EstebanLorenzano.39.mcz
> | > Author: Esteban Lorenzano
> | > Timestamp: 22 June 2011 07:30:44
> | > UUID: 2185730241644021282151402082469231
> | > Ancestors: PetitAnalyzer-lr.38.mcz
> | > Message: -changed ==> and >=> to => and ><
> | > Downloads: Web: 17
> |
> |

Reply | Threaded
Open this post in threaded view
|

Re: petit parser on gemstone?

Lukas Renggli
In reply to this post by Dale Henrichs
Dale, you can remove PPStream and replace all references with whatever
positionable stream class you wish. PPStream is just for efficiency
reasons, and even if there are tons of sends to #position: and
#position it should work because this is solely used to capture and
restore the stream state.

Lukas

On 23 June 2011 18:31, Dale Henrichs <[hidden email]> wrote:

> PPStream ... hmm ... in 2.4 PositionStream uses #itsCollection instead of collection and the value of #position is not ANSI compliant ... ANSIReadStream and ANSIWriteStream can be used to get ansi compliant #position ... no easy answer for #itsCollection ... it seems that most people subclassing PositionableStream tend to access the #collection instance variable directly:(
>
> In 3.0 we have a portable PositionStream implementation that is compatible with Pharo (and everyone else) as well as retaining the legacy implementation ... we'll also have fixes for the binary selector issue in 3.0, but that won't help you now.
>
> Dale
>
> ----- Original Message -----
> | From: "Esteban Lorenzano" <[hidden email]>
> | To: "GemStone Seaside beta discussion" <[hidden email]>
> | Sent: Wednesday, June 22, 2011 11:20:22 AM
> | Subject: Re: [GS/SS Beta] petit parser on gemstone?
> |
> | I was having  a UUID plugin error :P
> | now it loads, with some "radical" changes: I removed PPAnalyzerTest
> | because there were an error compiling PPAnalyzerTest
> | class>>#grammarC and I couldn't realize what's the problem.
> |
> | Now... there are problems on PPStream and it is not working :(
> |
> | Anyway, I will continue tomorrow.
> |
> | Cheers,
> | Esteban
> |
> |
> | El 22/06/2011, a las 1:28p.m., Dale Henrichs escribió:
> |
> | > Well this is a new one ...
> | >
> | > The UUID for ConfigurationOfPetitParser-EstebanLorenzano.17 and
> | > PetitTests-EstebanLorenzano.33 are both
> | > 'da390300-18a4-2802-80d7-0e00d0f65c1f'.
> | >
> | > GemStone uses a MCDictionaryRepository as the cache repository
> | > which means that equality is used to compare keys ... since those
> | > two packages have the same UUID, PetitTests-EstebanLorenzano.33 is
> | > stored in the value of the association whose key is
> | > ConfigurationOfPetitParser-EstebanLorenzano.17 and is therefore
> | > effectively hidden when a lookup is done using the name of the
> | > versionInfo, instead of the UUID ...
> | >
> | > So much for unique ID, huh?
> | >
> | > Here's the tale of the tape from GemSource:
> | >
> | > Filename:   ConfigurationOfPetitParser-EstebanLorenzano.17.mcz
> | > Author:     Esteban Lorenzano
> | > Timestamp:  22 June 2011 07:35:03
> | > UUID:       2185730241644021282151402082469231
> | > Ancestors:  ConfigurationOfPetitParser-AlexandreBergel.16.mcz
> | > Message:    ported to gemstone
> | > Downloads:  Web: 7
> | >
> | > Filename:   PetitTests-EstebanLorenzano.33.mcz
> | > Author:     Esteban Lorenzano
> | > Timestamp:  22 June 2011 07:30:16
> | > UUID:       2185730241644021282151402082469231
> | > Ancestors:  PetitTests-lr.32.mcz
> | > Message:    -changed ==> and >=> to => and ><
> | > Downloads:  Web: 23
> | >
> | > So it looks like if you do another commit of either
> | > ConfigurationOfPetitParser or PetitTests, then the UUID collision
> | > will go away ...
> | >
> | > But wait, the same UUID is shared amongst several more packages!:
> | >
> | > Filename:   PetitXPath-EstebanLorenzano.2.mcz
> | > Author:     Esteban Lorenzano
> | > Timestamp:  22 June 2011 07:31:48
> | > UUID:       2185730241644021282151402082469231
> | > Ancestors:  PetitXPath-EstebanLorenzano.1.mcz
> | > Message:    -changed ==> and >=> to => and ><
> | > Downloads:  Web: 12
> | >
> | >
> | > Filename:   PetitCSV-EstebanLorenzano.8.mcz
> | > Author:     Esteban Lorenzano
> | > Timestamp:  22 June 2011 07:31:11
> | > UUID:       2185730241644021282151402082469231
> | > Ancestors:  PetitCSV-tg.7.mcz
> | > Message:    -changed ==> and >=> to => and ><
> | > Downloads:  Web: 7
> | >
> | >
> | > Filename:   PetitAnalyzer-EstebanLorenzano.39.mcz
> | > Author:     Esteban Lorenzano
> | > Timestamp:  22 June 2011 07:30:44
> | > UUID:       2185730241644021282151402082469231
> | > Ancestors:  PetitAnalyzer-lr.38.mcz
> | > Message:    -changed ==> and >=> to => and ><
> | > Downloads:  Web: 17
> |
> |
>



--
Lukas Renggli
www.lukas-renggli.ch
Reply | Threaded
Open this post in threaded view
|

Re: petit parser on gemstone?

Dale Henrichs
In reply to this post by EstebanLM
Cool! Good effort Esteban!

Dale

----- Original Message -----
| From: "Esteban Lorenzano" <[hidden email]>
| To: "GemStone Seaside beta discussion" <[hidden email]>
| Sent: Thursday, June 23, 2011 8:44:14 AM
| Subject: Re: [GS/SS Beta] petit parser on gemstone?
|
| I'm just finishing an ugly hack that makes PPStream (and all petit
| parser) work :P
|
| El 23/06/2011, a las 12:31p.m., Dale Henrichs escribió:
|
| > PPStream ... hmm ... in 2.4 PositionStream uses #itsCollection
| > instead of collection and the value of #position is not ANSI
| > compliant ... ANSIReadStream and ANSIWriteStream can be used to
| > get ansi compliant #position ... no easy answer for #itsCollection
| > ... it seems that most people subclassing PositionableStream tend
| > to access the #collection instance variable directly:(
| >
| > In 3.0 we have a portable PositionStream implementation that is
| > compatible with Pharo (and everyone else) as well as retaining the
| > legacy implementation ... we'll also have fixes for the binary
| > selector issue in 3.0, but that won't help you now.
| >
| > Dale
| >
| > ----- Original Message -----
| > | From: "Esteban Lorenzano" <[hidden email]>
| > | To: "GemStone Seaside beta discussion"
| > | <[hidden email]>
| > | Sent: Wednesday, June 22, 2011 11:20:22 AM
| > | Subject: Re: [GS/SS Beta] petit parser on gemstone?
| > |
| > | I was having  a UUID plugin error :P
| > | now it loads, with some "radical" changes: I removed
| > | PPAnalyzerTest
| > | because there were an error compiling PPAnalyzerTest
| > | class>>#grammarC and I couldn't realize what's the problem.
| > |
| > | Now... there are problems on PPStream and it is not working :(
| > |
| > | Anyway, I will continue tomorrow.
| > |
| > | Cheers,
| > | Esteban
| > |
| > |
| > | El 22/06/2011, a las 1:28p.m., Dale Henrichs escribió:
| > |
| > | > Well this is a new one ...
| > | >
| > | > The UUID for ConfigurationOfPetitParser-EstebanLorenzano.17 and
| > | > PetitTests-EstebanLorenzano.33 are both
| > | > 'da390300-18a4-2802-80d7-0e00d0f65c1f'.
| > | >
| > | > GemStone uses a MCDictionaryRepository as the cache repository
| > | > which means that equality is used to compare keys ... since
| > | > those
| > | > two packages have the same UUID, PetitTests-EstebanLorenzano.33
| > | > is
| > | > stored in the value of the association whose key is
| > | > ConfigurationOfPetitParser-EstebanLorenzano.17 and is therefore
| > | > effectively hidden when a lookup is done using the name of the
| > | > versionInfo, instead of the UUID ...
| > | >
| > | > So much for unique ID, huh?
| > | >
| > | > Here's the tale of the tape from GemSource:
| > | >
| > | > Filename: ConfigurationOfPetitParser-EstebanLorenzano.17.mcz
| > | > Author: Esteban Lorenzano
| > | > Timestamp: 22 June 2011 07:35:03
| > | > UUID: 2185730241644021282151402082469231
| > | > Ancestors: ConfigurationOfPetitParser-AlexandreBergel.16.mcz
| > | > Message: ported to gemstone
| > | > Downloads: Web: 7
| > | >
| > | > Filename: PetitTests-EstebanLorenzano.33.mcz
| > | > Author: Esteban Lorenzano
| > | > Timestamp: 22 June 2011 07:30:16
| > | > UUID: 2185730241644021282151402082469231
| > | > Ancestors: PetitTests-lr.32.mcz
| > | > Message: -changed ==> and >=> to => and ><
| > | > Downloads: Web: 23
| > | >
| > | > So it looks like if you do another commit of either
| > | > ConfigurationOfPetitParser or PetitTests, then the UUID
| > | > collision
| > | > will go away ...
| > | >
| > | > But wait, the same UUID is shared amongst several more
| > | > packages!:
| > | >
| > | > Filename: PetitXPath-EstebanLorenzano.2.mcz
| > | > Author: Esteban Lorenzano
| > | > Timestamp: 22 June 2011 07:31:48
| > | > UUID: 2185730241644021282151402082469231
| > | > Ancestors: PetitXPath-EstebanLorenzano.1.mcz
| > | > Message: -changed ==> and >=> to => and ><
| > | > Downloads: Web: 12
| > | >
| > | >
| > | > Filename: PetitCSV-EstebanLorenzano.8.mcz
| > | > Author: Esteban Lorenzano
| > | > Timestamp: 22 June 2011 07:31:11
| > | > UUID: 2185730241644021282151402082469231
| > | > Ancestors: PetitCSV-tg.7.mcz
| > | > Message: -changed ==> and >=> to => and ><
| > | > Downloads: Web: 7
| > | >
| > | >
| > | > Filename: PetitAnalyzer-EstebanLorenzano.39.mcz
| > | > Author: Esteban Lorenzano
| > | > Timestamp: 22 June 2011 07:30:44
| > | > UUID: 2185730241644021282151402082469231
| > | > Ancestors: PetitAnalyzer-lr.38.mcz
| > | > Message: -changed ==> and >=> to => and ><
| > | > Downloads: Web: 17
| > |
| > |
|
|
Reply | Threaded
Open this post in threaded view
|

Re: petit parser on gemstone?

EstebanLM
almost there :P

what about #becomeForward: on gemstone? how can I replace it?


El 23/06/2011, a las 1:03p.m., Dale Henrichs escribió:

> Cool! Good effort Esteban!
>
> Dale
>
> ----- Original Message -----
> | From: "Esteban Lorenzano" <[hidden email]>
> | To: "GemStone Seaside beta discussion" <[hidden email]>
> | Sent: Thursday, June 23, 2011 8:44:14 AM
> | Subject: Re: [GS/SS Beta] petit parser on gemstone?
> |
> | I'm just finishing an ugly hack that makes PPStream (and all petit
> | parser) work :P
> |
> | El 23/06/2011, a las 12:31p.m., Dale Henrichs escribió:
> |
> | > PPStream ... hmm ... in 2.4 PositionStream uses #itsCollection
> | > instead of collection and the value of #position is not ANSI
> | > compliant ... ANSIReadStream and ANSIWriteStream can be used to
> | > get ansi compliant #position ... no easy answer for #itsCollection
> | > ... it seems that most people subclassing PositionableStream tend
> | > to access the #collection instance variable directly:(
> | >
> | > In 3.0 we have a portable PositionStream implementation that is
> | > compatible with Pharo (and everyone else) as well as retaining the
> | > legacy implementation ... we'll also have fixes for the binary
> | > selector issue in 3.0, but that won't help you now.
> | >
> | > Dale
> | >
> | > ----- Original Message -----
> | > | From: "Esteban Lorenzano" <[hidden email]>
> | > | To: "GemStone Seaside beta discussion"
> | > | <[hidden email]>
> | > | Sent: Wednesday, June 22, 2011 11:20:22 AM
> | > | Subject: Re: [GS/SS Beta] petit parser on gemstone?
> | > |
> | > | I was having  a UUID plugin error :P
> | > | now it loads, with some "radical" changes: I removed
> | > | PPAnalyzerTest
> | > | because there were an error compiling PPAnalyzerTest
> | > | class>>#grammarC and I couldn't realize what's the problem.
> | > |
> | > | Now... there are problems on PPStream and it is not working :(
> | > |
> | > | Anyway, I will continue tomorrow.
> | > |
> | > | Cheers,
> | > | Esteban
> | > |
> | > |
> | > | El 22/06/2011, a las 1:28p.m., Dale Henrichs escribió:
> | > |
> | > | > Well this is a new one ...
> | > | >
> | > | > The UUID for ConfigurationOfPetitParser-EstebanLorenzano.17 and
> | > | > PetitTests-EstebanLorenzano.33 are both
> | > | > 'da390300-18a4-2802-80d7-0e00d0f65c1f'.
> | > | >
> | > | > GemStone uses a MCDictionaryRepository as the cache repository
> | > | > which means that equality is used to compare keys ... since
> | > | > those
> | > | > two packages have the same UUID, PetitTests-EstebanLorenzano.33
> | > | > is
> | > | > stored in the value of the association whose key is
> | > | > ConfigurationOfPetitParser-EstebanLorenzano.17 and is therefore
> | > | > effectively hidden when a lookup is done using the name of the
> | > | > versionInfo, instead of the UUID ...
> | > | >
> | > | > So much for unique ID, huh?
> | > | >
> | > | > Here's the tale of the tape from GemSource:
> | > | >
> | > | > Filename: ConfigurationOfPetitParser-EstebanLorenzano.17.mcz
> | > | > Author: Esteban Lorenzano
> | > | > Timestamp: 22 June 2011 07:35:03
> | > | > UUID: 2185730241644021282151402082469231
> | > | > Ancestors: ConfigurationOfPetitParser-AlexandreBergel.16.mcz
> | > | > Message: ported to gemstone
> | > | > Downloads: Web: 7
> | > | >
> | > | > Filename: PetitTests-EstebanLorenzano.33.mcz
> | > | > Author: Esteban Lorenzano
> | > | > Timestamp: 22 June 2011 07:30:16
> | > | > UUID: 2185730241644021282151402082469231
> | > | > Ancestors: PetitTests-lr.32.mcz
> | > | > Message: -changed ==> and >=> to => and ><
> | > | > Downloads: Web: 23
> | > | >
> | > | > So it looks like if you do another commit of either
> | > | > ConfigurationOfPetitParser or PetitTests, then the UUID
> | > | > collision
> | > | > will go away ...
> | > | >
> | > | > But wait, the same UUID is shared amongst several more
> | > | > packages!:
> | > | >
> | > | > Filename: PetitXPath-EstebanLorenzano.2.mcz
> | > | > Author: Esteban Lorenzano
> | > | > Timestamp: 22 June 2011 07:31:48
> | > | > UUID: 2185730241644021282151402082469231
> | > | > Ancestors: PetitXPath-EstebanLorenzano.1.mcz
> | > | > Message: -changed ==> and >=> to => and ><
> | > | > Downloads: Web: 12
> | > | >
> | > | >
> | > | > Filename: PetitCSV-EstebanLorenzano.8.mcz
> | > | > Author: Esteban Lorenzano
> | > | > Timestamp: 22 June 2011 07:31:11
> | > | > UUID: 2185730241644021282151402082469231
> | > | > Ancestors: PetitCSV-tg.7.mcz
> | > | > Message: -changed ==> and >=> to => and ><
> | > | > Downloads: Web: 7
> | > | >
> | > | >
> | > | > Filename: PetitAnalyzer-EstebanLorenzano.39.mcz
> | > | > Author: Esteban Lorenzano
> | > | > Timestamp: 22 June 2011 07:30:44
> | > | > UUID: 2185730241644021282151402082469231
> | > | > Ancestors: PetitAnalyzer-lr.38.mcz
> | > | > Message: -changed ==> and >=> to => and ><
> | > | > Downloads: Web: 17
> | > |
> | > |
> |
> |

Reply | Threaded
Open this post in threaded view
|

Re: petit parser on gemstone?

EstebanLM
In reply to this post by Dale Henrichs
replaced #becomeForward: with plain #become: seems to work

El 23/06/2011, a las 1:03p.m., Dale Henrichs escribió:

> Cool! Good effort Esteban!
>
> Dale
>
> ----- Original Message -----
> | From: "Esteban Lorenzano" <[hidden email]>
> | To: "GemStone Seaside beta discussion" <[hidden email]>
> | Sent: Thursday, June 23, 2011 8:44:14 AM
> | Subject: Re: [GS/SS Beta] petit parser on gemstone?
> |
> | I'm just finishing an ugly hack that makes PPStream (and all petit
> | parser) work :P
> |
> | El 23/06/2011, a las 12:31p.m., Dale Henrichs escribió:
> |
> | > PPStream ... hmm ... in 2.4 PositionStream uses #itsCollection
> | > instead of collection and the value of #position is not ANSI
> | > compliant ... ANSIReadStream and ANSIWriteStream can be used to
> | > get ansi compliant #position ... no easy answer for #itsCollection
> | > ... it seems that most people subclassing PositionableStream tend
> | > to access the #collection instance variable directly:(
> | >
> | > In 3.0 we have a portable PositionStream implementation that is
> | > compatible with Pharo (and everyone else) as well as retaining the
> | > legacy implementation ... we'll also have fixes for the binary
> | > selector issue in 3.0, but that won't help you now.
> | >
> | > Dale
> | >
> | > ----- Original Message -----
> | > | From: "Esteban Lorenzano" <[hidden email]>
> | > | To: "GemStone Seaside beta discussion"
> | > | <[hidden email]>
> | > | Sent: Wednesday, June 22, 2011 11:20:22 AM
> | > | Subject: Re: [GS/SS Beta] petit parser on gemstone?
> | > |
> | > | I was having  a UUID plugin error :P
> | > | now it loads, with some "radical" changes: I removed
> | > | PPAnalyzerTest
> | > | because there were an error compiling PPAnalyzerTest
> | > | class>>#grammarC and I couldn't realize what's the problem.
> | > |
> | > | Now... there are problems on PPStream and it is not working :(
> | > |
> | > | Anyway, I will continue tomorrow.
> | > |
> | > | Cheers,
> | > | Esteban
> | > |
> | > |
> | > | El 22/06/2011, a las 1:28p.m., Dale Henrichs escribió:
> | > |
> | > | > Well this is a new one ...
> | > | >
> | > | > The UUID for ConfigurationOfPetitParser-EstebanLorenzano.17 and
> | > | > PetitTests-EstebanLorenzano.33 are both
> | > | > 'da390300-18a4-2802-80d7-0e00d0f65c1f'.
> | > | >
> | > | > GemStone uses a MCDictionaryRepository as the cache repository
> | > | > which means that equality is used to compare keys ... since
> | > | > those
> | > | > two packages have the same UUID, PetitTests-EstebanLorenzano.33
> | > | > is
> | > | > stored in the value of the association whose key is
> | > | > ConfigurationOfPetitParser-EstebanLorenzano.17 and is therefore
> | > | > effectively hidden when a lookup is done using the name of the
> | > | > versionInfo, instead of the UUID ...
> | > | >
> | > | > So much for unique ID, huh?
> | > | >
> | > | > Here's the tale of the tape from GemSource:
> | > | >
> | > | > Filename: ConfigurationOfPetitParser-EstebanLorenzano.17.mcz
> | > | > Author: Esteban Lorenzano
> | > | > Timestamp: 22 June 2011 07:35:03
> | > | > UUID: 2185730241644021282151402082469231
> | > | > Ancestors: ConfigurationOfPetitParser-AlexandreBergel.16.mcz
> | > | > Message: ported to gemstone
> | > | > Downloads: Web: 7
> | > | >
> | > | > Filename: PetitTests-EstebanLorenzano.33.mcz
> | > | > Author: Esteban Lorenzano
> | > | > Timestamp: 22 June 2011 07:30:16
> | > | > UUID: 2185730241644021282151402082469231
> | > | > Ancestors: PetitTests-lr.32.mcz
> | > | > Message: -changed ==> and >=> to => and ><
> | > | > Downloads: Web: 23
> | > | >
> | > | > So it looks like if you do another commit of either
> | > | > ConfigurationOfPetitParser or PetitTests, then the UUID
> | > | > collision
> | > | > will go away ...
> | > | >
> | > | > But wait, the same UUID is shared amongst several more
> | > | > packages!:
> | > | >
> | > | > Filename: PetitXPath-EstebanLorenzano.2.mcz
> | > | > Author: Esteban Lorenzano
> | > | > Timestamp: 22 June 2011 07:31:48
> | > | > UUID: 2185730241644021282151402082469231
> | > | > Ancestors: PetitXPath-EstebanLorenzano.1.mcz
> | > | > Message: -changed ==> and >=> to => and ><
> | > | > Downloads: Web: 12
> | > | >
> | > | >
> | > | > Filename: PetitCSV-EstebanLorenzano.8.mcz
> | > | > Author: Esteban Lorenzano
> | > | > Timestamp: 22 June 2011 07:31:11
> | > | > UUID: 2185730241644021282151402082469231
> | > | > Ancestors: PetitCSV-tg.7.mcz
> | > | > Message: -changed ==> and >=> to => and ><
> | > | > Downloads: Web: 7
> | > | >
> | > | >
> | > | > Filename: PetitAnalyzer-EstebanLorenzano.39.mcz
> | > | > Author: Esteban Lorenzano
> | > | > Timestamp: 22 June 2011 07:30:44
> | > | > UUID: 2185730241644021282151402082469231
> | > | > Ancestors: PetitAnalyzer-lr.38.mcz
> | > | > Message: -changed ==> and >=> to => and ><
> | > | > Downloads: Web: 17
> | > |
> | > |
> |
> |

Reply | Threaded
Open this post in threaded view
|

Re: petit parser on gemstone?

EstebanLM
In reply to this post by Dale Henrichs
ok, I have a working version. You can test here:

Gofer it
        gemsource: 'PortablePetitParser';
        package: 'ConfigurationOfPetitParser';
        load.

MCPlatformSupport commitOnAlmostOutOfMemoryDuring: [
        (ConfigurationOfPetitParser project version: '1.4') load: 'ALL' ].

There are some changes:

1) #==> and #>=> were replaced with #=> and #>< (I don't like this selectors, but there is no reason to use different selectors than gnust port)
2) added PetitParserGemstone package who overrides things in PPStream and its hierarchy, to make it work.
3) #becomeForward: replaced with #become:
4) PPAnalyzerTest was removed because there were a compilation error I couldn't fix (Dale?).

All tests are green except one: PPLambdaParserTest>>#testProductionAt:

I initially ported this packages:

PetitXml, PetitXPath (those two was the parsers I needed)
and I also added PetitCSV and PetitJson.... others should be straightforward, just replace ==> and >=> with their respective selectors.

NOTE: this version works both for pharo and gemstone, also, there are no api changes so pp users shouldn't need to change anything in their programs to use it in any of the platforms.
DISCLAIMER: this version is very hacked because I need it working as soon as possible... anyone is welcome to change anything to make it better :)

enjoy!

Cheers,
Esteban


El 23/06/2011, a las 1:03p.m., Dale Henrichs escribió:

> Cool! Good effort Esteban!
>
> Dale
>
> ----- Original Message -----
> | From: "Esteban Lorenzano" <[hidden email]>
> | To: "GemStone Seaside beta discussion" <[hidden email]>
> | Sent: Thursday, June 23, 2011 8:44:14 AM
> | Subject: Re: [GS/SS Beta] petit parser on gemstone?
> |
> | I'm just finishing an ugly hack that makes PPStream (and all petit
> | parser) work :P
> |
> | El 23/06/2011, a las 12:31p.m., Dale Henrichs escribió:
> |
> | > PPStream ... hmm ... in 2.4 PositionStream uses #itsCollection
> | > instead of collection and the value of #position is not ANSI
> | > compliant ... ANSIReadStream and ANSIWriteStream can be used to
> | > get ansi compliant #position ... no easy answer for #itsCollection
> | > ... it seems that most people subclassing PositionableStream tend
> | > to access the #collection instance variable directly:(
> | >
> | > In 3.0 we have a portable PositionStream implementation that is
> | > compatible with Pharo (and everyone else) as well as retaining the
> | > legacy implementation ... we'll also have fixes for the binary
> | > selector issue in 3.0, but that won't help you now.
> | >
> | > Dale
> | >
> | > ----- Original Message -----
> | > | From: "Esteban Lorenzano" <[hidden email]>
> | > | To: "GemStone Seaside beta discussion"
> | > | <[hidden email]>
> | > | Sent: Wednesday, June 22, 2011 11:20:22 AM
> | > | Subject: Re: [GS/SS Beta] petit parser on gemstone?
> | > |
> | > | I was having  a UUID plugin error :P
> | > | now it loads, with some "radical" changes: I removed
> | > | PPAnalyzerTest
> | > | because there were an error compiling PPAnalyzerTest
> | > | class>>#grammarC and I couldn't realize what's the problem.
> | > |
> | > | Now... there are problems on PPStream and it is not working :(
> | > |
> | > | Anyway, I will continue tomorrow.
> | > |
> | > | Cheers,
> | > | Esteban
> | > |
> | > |
> | > | El 22/06/2011, a las 1:28p.m., Dale Henrichs escribió:
> | > |
> | > | > Well this is a new one ...
> | > | >
> | > | > The UUID for ConfigurationOfPetitParser-EstebanLorenzano.17 and
> | > | > PetitTests-EstebanLorenzano.33 are both
> | > | > 'da390300-18a4-2802-80d7-0e00d0f65c1f'.
> | > | >
> | > | > GemStone uses a MCDictionaryRepository as the cache repository
> | > | > which means that equality is used to compare keys ... since
> | > | > those
> | > | > two packages have the same UUID, PetitTests-EstebanLorenzano.33
> | > | > is
> | > | > stored in the value of the association whose key is
> | > | > ConfigurationOfPetitParser-EstebanLorenzano.17 and is therefore
> | > | > effectively hidden when a lookup is done using the name of the
> | > | > versionInfo, instead of the UUID ...
> | > | >
> | > | > So much for unique ID, huh?
> | > | >
> | > | > Here's the tale of the tape from GemSource:
> | > | >
> | > | > Filename: ConfigurationOfPetitParser-EstebanLorenzano.17.mcz
> | > | > Author: Esteban Lorenzano
> | > | > Timestamp: 22 June 2011 07:35:03
> | > | > UUID: 2185730241644021282151402082469231
> | > | > Ancestors: ConfigurationOfPetitParser-AlexandreBergel.16.mcz
> | > | > Message: ported to gemstone
> | > | > Downloads: Web: 7
> | > | >
> | > | > Filename: PetitTests-EstebanLorenzano.33.mcz
> | > | > Author: Esteban Lorenzano
> | > | > Timestamp: 22 June 2011 07:30:16
> | > | > UUID: 2185730241644021282151402082469231
> | > | > Ancestors: PetitTests-lr.32.mcz
> | > | > Message: -changed ==> and >=> to => and ><
> | > | > Downloads: Web: 23
> | > | >
> | > | > So it looks like if you do another commit of either
> | > | > ConfigurationOfPetitParser or PetitTests, then the UUID
> | > | > collision
> | > | > will go away ...
> | > | >
> | > | > But wait, the same UUID is shared amongst several more
> | > | > packages!:
> | > | >
> | > | > Filename: PetitXPath-EstebanLorenzano.2.mcz
> | > | > Author: Esteban Lorenzano
> | > | > Timestamp: 22 June 2011 07:31:48
> | > | > UUID: 2185730241644021282151402082469231
> | > | > Ancestors: PetitXPath-EstebanLorenzano.1.mcz
> | > | > Message: -changed ==> and >=> to => and ><
> | > | > Downloads: Web: 12
> | > | >
> | > | >
> | > | > Filename: PetitCSV-EstebanLorenzano.8.mcz
> | > | > Author: Esteban Lorenzano
> | > | > Timestamp: 22 June 2011 07:31:11
> | > | > UUID: 2185730241644021282151402082469231
> | > | > Ancestors: PetitCSV-tg.7.mcz
> | > | > Message: -changed ==> and >=> to => and ><
> | > | > Downloads: Web: 7
> | > | >
> | > | >
> | > | > Filename: PetitAnalyzer-EstebanLorenzano.39.mcz
> | > | > Author: Esteban Lorenzano
> | > | > Timestamp: 22 June 2011 07:30:44
> | > | > UUID: 2185730241644021282151402082469231
> | > | > Ancestors: PetitAnalyzer-lr.38.mcz
> | > | > Message: -changed ==> and >=> to => and ><
> | > | > Downloads: Web: 17
> | > |
> | > |
> |
> |

12