I think writing the tests is a 2-6 hour task. Writing specs-based tests for parsers is pretty easy. If we have to move over to a byte-based parsing paradigm, it's probably going to be be 1-2 days of work.
On Thu, Oct 15, 2009 at 10:16 AM, Richard Hirsch <[email protected]>wrote: > How much effort is involved to switch the parser to the byte-steam? > Testing the change could be done initially via the UI to speed things > up. > > D. > > On Thu, Oct 15, 2009 at 7:14 PM, David Pollak > <[email protected]> wrote: > > On Thu, Oct 15, 2009 at 10:09 AM, Richard Hirsch <[email protected] > >wrote: > > > >> OK - what do we have to do to solve the problem? Rewrite the parser? > >> > > > > I'm not sure. > > > > I think there are a couple of things... first, we can write some unit > tests > > for the elements of existing parser and see how it's failing for > particular > > cases and if there's something that can be done. > > > > If that doesn't work, we can change from stream of characters to a stream > of > > bytes. Most of the existing parsing logic should work (or be easily > > ported), but we'll have finer control over the byte-streams for > non-western > > character sets. > > > > > >> > >> D. > >> > >> On Thu, Oct 15, 2009 at 7:00 PM, David Pollak > >> <[email protected]> wrote: > >> > I think part of the problem is that the RFC was written against a > >> > byte-stream, but we're running the parser against a character stream. > >> > > >> > On Thu, Oct 15, 2009 at 9:18 AM, Xuefeng Wu <[email protected]> wrote: > >> > > >> >> Thank you for your information. > >> >> What we should do for this now? > >> >> let the wrong thing stay or find out a resolution? > >> >> > >> >> > >> >> On Thu, Oct 15, 2009 at 6:40 PM, Vassil Dichev <[email protected]> > >> wrote: > >> >> > >> >> > > Why the name is *escape*, anyone could explain? > >> >> > > >> >> > I think most of the MsgParser concerning URLs is transformed from > >> >> > RFC1738 (http://www.faqs.org/rfcs/rfc1738.html) BNF notation into > >> >> > Scala using parser combinators. So for any inconsistencies you've > >> >> > found the point of reference is this RFC. > >> >> > > >> >> > As for the escape, it's a special character which modifies the > meaning > >> >> > of the following characters (more info here: > >> >> > http://en.wikipedia.org/wiki/Escape_character). In the RFC the > escape > >> >> > is defined like this: > >> >> > > >> >> > escape = "%" hex hex > >> >> > > >> >> > >> >> > >> >> > >> >> -- > >> >> Global R&D Center,Shanghai China,Carestream Health, Inc. > >> >> Tel:(86-21)3852 6101 > >> >> > >> > > >> > > >> > > >> > -- > >> > Lift, the simply functional web framework http://liftweb.net > >> > Beginning Scala http://www.apress.com/book/view/1430219890 > >> > Follow me: http://twitter.com/dpp > >> > Surf the harmonics > >> > > >> > > > > > > > > -- > > Lift, the simply functional web framework http://liftweb.net > > Beginning Scala http://www.apress.com/book/view/1430219890 > > Follow me: http://twitter.com/dpp > > Surf the harmonics > > > -- Lift, the simply functional web framework http://liftweb.net Beginning Scala http://www.apress.com/book/view/1430219890 Follow me: http://twitter.com/dpp Surf the harmonics
