Hi,
After more than two years (!), I made a small iteration on the PetitXPath parser.
- I fixed the grammar to match more accurately to the specification (http://www.w3schools.com/xpath/xpath_syntax.asp) - I added a couple of more grammars (this is still incomplete, but now is a bit better) - I refactored a lot of stuff to extract functionality from XML documents and put it into an independent (and therefore, extensible) class (I was thinking on implementing something to introspect the pharo system, for example...). - I also renamed the entry method from the too generic "find::" to a more precise "findXPath:" - I create a "default" parser, a singleton who allows me to speed up my processes (my benchmarks gave me x12 speed up on querying documents by just not creating a parser each time) - I added class comments. Probably not the best in the world, but at least better than before. - finally, but not least, I added tests to validate the syntax
still far from an ideal situation, but I think a lot better... now, the problem is:
- it is not backward compatible, because I removed #find: method. I can put it back if required (but deprecated), but I'm not sure anyone is using it (in fact, I think no one is actually using it right now) - I need write access into the Moose team to commit my changes :)
cheers, Esteban
I added you to the Moose team
On Apr 23, 2013, at 4:39 PM, Esteban Lorenzano estebanlm@gmail.com wrote:
Hi,
After more than two years (!), I made a small iteration on the PetitXPath parser.
- I fixed the grammar to match more accurately to the specification (http://www.w3schools.com/xpath/xpath_syntax.asp)
- I added a couple of more grammars (this is still incomplete, but now is a bit better)
- I refactored a lot of stuff to extract functionality from XML documents and put it into an independent (and therefore, extensible) class (I was thinking on implementing something to introspect the pharo system, for example...).
- I also renamed the entry method from the too generic "find::" to a more precise "findXPath:"
- I create a "default" parser, a singleton who allows me to speed up my processes (my benchmarks gave me x12 speed up on querying documents by just not creating a parser each time)
- I added class comments. Probably not the best in the world, but at least better than before.
- finally, but not least, I added tests to validate the syntax
still far from an ideal situation, but I think a lot better... now, the problem is:
- it is not backward compatible, because I removed #find: method. I can put it back if required (but deprecated), but I'm not sure anyone is using it (in fact, I think no one is actually using it right now)
- I need write access into the Moose team to commit my changes :)
cheers, Esteban _______________________________________________ Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Great.
Thanks a lot, Doru
On Apr 23, 2013, at 9:45 PM, stephane ducasse stephane.ducasse@free.fr wrote:
I added you to the Moose team
On Apr 23, 2013, at 4:39 PM, Esteban Lorenzano estebanlm@gmail.com wrote:
Hi,
After more than two years (!), I made a small iteration on the PetitXPath parser.
- I fixed the grammar to match more accurately to the specification (http://www.w3schools.com/xpath/xpath_syntax.asp)
- I added a couple of more grammars (this is still incomplete, but now is a bit better)
- I refactored a lot of stuff to extract functionality from XML documents and put it into an independent (and therefore, extensible) class (I was thinking on implementing something to introspect the pharo system, for example...).
- I also renamed the entry method from the too generic "find::" to a more precise "findXPath:"
- I create a "default" parser, a singleton who allows me to speed up my processes (my benchmarks gave me x12 speed up on querying documents by just not creating a parser each time)
- I added class comments. Probably not the best in the world, but at least better than before.
- finally, but not least, I added tests to validate the syntax
still far from an ideal situation, but I think a lot better... now, the problem is:
- it is not backward compatible, because I removed #find: method. I can put it back if required (but deprecated), but I'm not sure anyone is using it (in fact, I think no one is actually using it right now)
- I need write access into the Moose team to commit my changes :)
cheers, Esteban _______________________________________________ Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
-- www.tudorgirba.com
"Every thing should have the right to be different."
commited :)
On Apr 24, 2013, at 6:21 AM, Tudor Girba tudor@tudorgirba.com wrote:
Great.
Thanks a lot, Doru
On Apr 23, 2013, at 9:45 PM, stephane ducasse stephane.ducasse@free.fr wrote:
I added you to the Moose team
On Apr 23, 2013, at 4:39 PM, Esteban Lorenzano estebanlm@gmail.com wrote:
Hi,
After more than two years (!), I made a small iteration on the PetitXPath parser.
- I fixed the grammar to match more accurately to the specification (http://www.w3schools.com/xpath/xpath_syntax.asp)
- I added a couple of more grammars (this is still incomplete, but now is a bit better)
- I refactored a lot of stuff to extract functionality from XML documents and put it into an independent (and therefore, extensible) class (I was thinking on implementing something to introspect the pharo system, for example...).
- I also renamed the entry method from the too generic "find::" to a more precise "findXPath:"
- I create a "default" parser, a singleton who allows me to speed up my processes (my benchmarks gave me x12 speed up on querying documents by just not creating a parser each time)
- I added class comments. Probably not the best in the world, but at least better than before.
- finally, but not least, I added tests to validate the syntax
still far from an ideal situation, but I think a lot better... now, the problem is:
- it is not backward compatible, because I removed #find: method. I can put it back if required (but deprecated), but I'm not sure anyone is using it (in fact, I think no one is actually using it right now)
- I need write access into the Moose team to commit my changes :)
cheers, Esteban _______________________________________________ Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
-- www.tudorgirba.com
"Every thing should have the right to be different."
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Even better :)
Doru
On Wed, Apr 24, 2013 at 12:47 PM, Esteban Lorenzano estebanlm@gmail.comwrote:
commited :)
On Apr 24, 2013, at 6:21 AM, Tudor Girba tudor@tudorgirba.com wrote:
Great.
Thanks a lot, Doru
On Apr 23, 2013, at 9:45 PM, stephane ducasse stephane.ducasse@free.fr
wrote:
I added you to the Moose team
On Apr 23, 2013, at 4:39 PM, Esteban Lorenzano estebanlm@gmail.com
wrote:
Hi,
After more than two years (!), I made a small iteration on the
PetitXPath parser.
- I fixed the grammar to match more accurately to the specification (
http://www.w3schools.com/xpath/xpath_syntax.asp)
- I added a couple of more grammars (this is still incomplete, but now
is a bit better)
- I refactored a lot of stuff to extract functionality from XML
documents and put it into an independent (and therefore, extensible) class (I was thinking on implementing something to introspect the pharo system, for example...).
- I also renamed the entry method from the too generic "find::" to a
more precise "findXPath:"
- I create a "default" parser, a singleton who allows me to speed up
my processes (my benchmarks gave me x12 speed up on querying documents by just not creating a parser each time)
- I added class comments. Probably not the best in the world, but at
least better than before.
- finally, but not least, I added tests to validate the syntax
still far from an ideal situation, but I think a lot better... now, the problem is:
- it is not backward compatible, because I removed #find: method. I
can put it back if required (but deprecated), but I'm not sure anyone is using it (in fact, I think no one is actually using it right now)
- I need write access into the Moose team to commit my changes :)
cheers, Esteban _______________________________________________ Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
-- www.tudorgirba.com
"Every thing should have the right to be different."
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev