On 10/06/11 at 12:41pm, Anders Nygren wrote: > Hi > Just for fun I made a RFC4180 parser using the ABNF in the RFC. > > Compile rfc4180.abnf using abnfc > > abnfc -binary rfc4180.abnf > > And You get a working csv parser. > There are some things in the textual description in the RFC that is > not reflected > in the abnf, e.g. if the file has a header row or not, and the > generated parser does not > check that all rows has the same number of fields.
Anders thanks. I will take a look at getting this rolled into erfc_parsers this weekend. Considering that abnf is an erlang system it might be interesting to roll it into sinan as a plugin. I may actually do that sometime in the next week or so. > /Anders > > On Wed, Oct 5, 2011 at 12:15 PM, Anders Nygren <[email protected]> > wrote: > > On Wed, Oct 5, 2011 at 12:09 PM, Eric Merritt <[email protected]> > > wrote: > >> On 10/05/11 at 11:48am, Anders Nygren wrote: > >>> Eric > >>> In case You are not already aware of it, I would like to point You to > >>> my ABNF parser > >>> generator, abnfc, (most RFCs are specified using ABNF) > >> > >> I wasn't aware of it at all. Thats good to know. I probably will not > >> go back and rewrite the existing stuff. However, I will absolutely > >> keep it in mind for the future. > >> > >>> https://github.com/nygge/abnfc > >>> > >>> The documentation is nonexistent, but it was presented at EUC 2008 > >>> > >>> http://www.erlang.org/euc/08/1500Nygren2.pdf > >>> > >>> There has been some changes after that, so contact me if You have any > >>> questions/problems. > >>> > >>> In general I am not sure it is a good idea to put all RFC parsers in one > >>> erlang > >>> application. Since after a while You may get a large number of unrelated > >>> stuff. > >> > >> I am always on the fence about this. I am not a big fan of 1 erlang > >> file OTP apps, though there is nothing intrinsically wrong with > >> that. I try to group modules in some reasonable way. In this case, I > >> think that the fact that this is a library application (ie static) > >> implies that there is no system overhead in having all the RFCs > >> there. Though as you say there maybe some conceptual overhead. > >> > > > > Thinking a little more about this, it is not so bad, since with reltool > > it is fairly simple to specify which modules to include from an application > > when creating a release. > > > > /Anders > > > >> > >>> But on the other hand many RFCs imports parts of other RFCs so I do > >>> not have any good ideas on how to structure it. > >> > >> Right now its just going be structured by name. for example each RFC > >> implementation will be named erfc_<rfc number>.erl. For example, 8120 > >> would be named erfc_8120.erl. etc. > >> > >>> > >>> Maybe the best is just to make a big bag of parsers and let people pick > >>> the ones > >>> they need. > >> > >> That is exactly the current plan. :) > >> > >> Thanks Anders, your input is always rock solid. > >>> > >>> /Anders > >>> > >>> On Wed, Oct 5, 2011 at 10:48 AM, Eric Merritt <[email protected]> > >>> wrote: > >>> > Hello All, > >>> > > >>> > I have started an RFC parsing library in support of my latest > >>> > endeavor. This seems like a target to put under erlware. I thought I > >>> > would float the idea to the list. > >>> > > >>> > https://github.com/ericbmerritt/erfc_parsers > >>> > > >>> > I dont have a specific goal of implementing all RFCs but as I need > >>> > them (RFC 821 should show up shortly) I will add them. > >>> > > >>> > What does everone think of putting them under erlware? > >>> > > >>> > Eric > >>> > > >>> > -- > >>> > You received this message because you are subscribed to the Google > >>> > Groups "erlware-dev" group. > >>> > To post to this group, send email to [email protected]. > >>> > To unsubscribe from this group, send email to > >>> > [email protected]. > >>> > For more options, visit this group at > >>> > http://groups.google.com/group/erlware-dev?hl=en. > >>> > > >>> > > >>> > >>> -- > >>> You received this message because you are subscribed to the Google Groups > >>> "erlware-dev" group. > >>> To post to this group, send email to [email protected]. > >>> To unsubscribe from this group, send email to > >>> [email protected]. > >>> For more options, visit this group at > >>> http://groups.google.com/group/erlware-dev?hl=en. > >>> > >> > >> -- > >> You received this message because you are subscribed to the Google Groups > >> "erlware-dev" group. > >> To post to this group, send email to [email protected]. > >> To unsubscribe from this group, send email to > >> [email protected]. > >> For more options, visit this group at > >> http://groups.google.com/group/erlware-dev?hl=en. > >> > >> > > > > -- > You received this message because you are subscribed to the Google Groups > "erlware-dev" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/erlware-dev?hl=en. > -- You received this message because you are subscribed to the Google Groups "erlware-dev" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/erlware-dev?hl=en.
