Date: Tue, 28 Jan 1997 16:31:49 +1030 (CST) From: Michael Smith <msmith@atrad.adelaide.edu.au> To: hosokawa@mt.cs.keio.ac.jp (HOSOKAWA Tatsumi) Cc: msmith@atrad.adelaide.edu.au, config@freebsd.org, chat@freebsd.org, hosokawa@mt.cs.keio.ac.jp Subject: Re: Kernel config metasyntax Message-ID: <199701280601.QAA07873@genesis.atrad.adelaide.edu.au> In-Reply-To: <199701280501.OAA16760@lenlen.mt.cs.keio.ac.jp> from HOSOKAWA Tatsumi at "Jan 28, 97 02:01:38 pm"
next in thread | previous in thread | raw e-mail | index | archive | help
HOSOKAWA Tatsumi stands accused of saying:
> I don't want to flame about metaconfiguration base language because
> the only thing I want is megtaconfiguration language :-).
Ooh, you mean a megaconfiguration language? I agree 100% 8)
> I personally think that writing parser in yacc is not difficult, and I
> wrote yesterday's example only in a few hours. I also posted this
> example in local hacker's mailing list and I got some advices. I'm
> fixing the problems and extending the syntax to incorporate requested
> features.
My basic problem with using a yacc parser is that it sets not only
the syntax but the content of the language in stone. The syntax I
proposed basically boils down to :
line :
->-(type)-(name)-[attribute-list]->-
attribute-list :
->-'{'-+-[attribute]-+-'}'->-
| |
+-----<-------+
attribute :
->-'{'-(attribute-name)-+-(attribute-value)-+-'}'->-
| |
+---------<---------+
Where the parser _explicitly_ knows nothing about (type), (name),
(attribute-name) or (attribute-value).
I realise that in a B&D language like C, this abstraction is a little
more complex to manage, but that is more an argument for a better
choice of implementation language than a slur on the syntax.
> HOSOKAWA, Tatsumi
--
]] Mike Smith, Software Engineer msmith@gsoft.com.au [[
]] Genesis Software genesis@gsoft.com.au [[
]] High-speed data acquisition and (GSM mobile) 0411-222-496 [[
]] realtime instrument control. (ph) +61-8-8267-3493 [[
]] Unix hardware collector. "Where are your PEZ?" The Tick [[
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199701280601.QAA07873>
