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>