Subject: RE: SIP parser tool

From: [email-masked]
Date: Wed, 29 Dec 1999 17:15:14 +0530

Whoops, I must say have a _very_ different opinion about this.
We did  both, and our benchmarks were very differnt that what you sight in
terms of

1. Optimisation
2. Flexibility
3. Parsing capabilities.

I guess 1 is where you sight hand written highly over rule based  - where
my opinion differs=
Anyway, this this is nothing to do with SIP protocol as such, maybe this
list is not appropriate for a more elaborate discussion ?
The issue of speed and optimisation for large grammars like SIP, imho, is
to an extent myth based - next generation scanners and
rule generators (not the olde versions of lex and yacc) are highly
optimised.
There are various ways to optimise rule generated grammars - once done, Im
quite sure the results would be surprising for all those who try.

So Chirster, you need to evaluate well between the above 3 points before
you dive in ! Sure there are come compromnises somewhere, but you need to
know which is more important !

Anyway to answer your question: if used properly (inmo again), rule based
grammars may save you a lot of headaches more thatn what
you may assume now.

Best Regds
Arjun
--
Arjun Roychowdhury @ Hughes Software Systems

Hemon Philippe <[email-masked]> on 12/29/99 04:00:16 PM

To:   "'Christer Holmberg'" <[email-masked]>,
      [email-masked]
cc:

Subject:  RE: SIP parser tool

Hi,

There are two ways for developping a parser :

The first is to use a tool ( like Lex and Yacc ) that with a BNF grammar
generates the totality of the code. It's a quite easy and very fast method
to obtain the parser. But the main problems of this are :
     1- the generated code  is generally unreadable
     2- it's very difficult to optimize (the tool generated code is not
very high-performance) or to modify it
     3- you are dependant of a tool
By coding directly in pure C, C++, JAVA... it's more difficult and longer
to
obtain the same parser. The advantages are :
            1- you can easily change your code for optimizing
     2- high-performance

For JAVA, there are very interessant classes (java.lang.String and
java.util.StringTokenizer) for developping parsers.
I know also a free parser generator tool (like Lex and Yacc); you can see
it
at http://www.metamata.com/

Regards

Philippe H

émon
Siemens France

> -----Original Message-----
> From:   Christer Holmberg
> Sent:   Mittwoch, 29. Dezember 1999 10:32
> To:     [email-masked]
> Subject:     SIP parser tool
>
>
> Hi,
>
> I'm doing a little research on parser tools for SIP. Tools like lex and
> yacc don't seem to be very suitable, and implementations I've seen use
> pure C (C++, Java, whatever...) code for the parsing. Do you have any
> experience of this?
>
> Regards,
>
> Christer
>
>
>
>
>
> ----------------------------------------
> Christer Holmberg
> Advanced Signalling Reserach Laboratory
> Ericsson Finland
> ----------------------------------------

---

From: Casey <[email-masked]>
Date: Thu, 30 Dec 1999 11:16:05 +0800

Hi Arjun,

Thanks for the advice on parser. Would U clearify the tool you mentioned
is  "imho" or "inmo" ? Where could we get it ? 

Casey

>   ------------------------------------------------------------------------
> 
> émon
> Siemens France
>