public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: "Eric S. Raymond" <esr@thyrsus.com>
To: Jeff Garzik <jgarzik@mandrakesoft.com>
Cc: linux-kernel@vger.kernel.org
Subject: Possible breakthrough in the CML2 logjam?
Date: Sat, 16 Feb 2002 10:52:19 -0500	[thread overview]
Message-ID: <20020216105219.A31001@thyrsus.com> (raw)
In-Reply-To: <200202151929.g1FJTaU03362@pc1-camc5-0-cust78.cam.cable.ntl.com> <20020215141433.B11369@thyrsus.com> <20020215195818.A3534@pc1-camc5-0-cust78.cam.cable.ntl.com> <20020215145421.A12540@thyrsus.com> <20020215213833.J27880@suse.de> <1013810923.807.1055.camel@phantasy> <20020215232832.N27880@suse.de> <3C6DE87C.FA96D1D6@mandrakesoft.com> <20020216095202.M23546@thyrsus.com> <3C6E7C75.A6659D72@mandrakesoft.com>
In-Reply-To: <3C6E7C75.A6659D72@mandrakesoft.com>; from jgarzik@mandrakesoft.com on Sat, Feb 16, 2002 at 10:36:21AM -0500

Jeff Garzik <jgarzik@mandrakesoft.com>:
> Ideally in the future I can add and update a driver's makefile and
> configuration information by patching drivers/net/netdriver.c and
> drivers/net/netdriver.conf, and touch absolutely no other files.

That's very much the direction I'd like to go in, Jeff.  I'm
surprised and delighted to hear you say this.  You're actually
anticipating my plans for six months down the road.  Maybe we
have some common ground here.

One of the objectives of the CML2 language design is to make it
amenable to being generated by a metadata analyzer.  I mean some very
specific things by this.

One important property which CML2 declarations have that CML1 syntax
does not is that (a) they're not order-dependent, and (b) they have
strong locality (that is, the syntactic context of a single
declaration holds all the semantic information -- you don't have to go
monkey-climbing up a bunch of enclosing syntax to parse it, or
*generate* a bunch of enclosing syntax to express it).

These properties tremendously simplify generating a rulebase from
(so far hypothetical) analysis tools.  My first step would be to 
automatically generate CML2 bus-guard information from annotations
in the driver sources.  Once I write a tool that can do that, I can whack
about 25% of the rulebase, including most of the parts that are a 
maintainance headache.

My longer-term plan is to whittle away at the manually-maintained
rulebase until nothing but menu structure and a handful of cross-
directory requirements are left.  Everything else should be generated
by a program that turns source-code metadata into stereotyped CML2
markup.  

Even a lot of the menu structure might be generatable, requiring it
to be specified only in exception cases where as a matter of UI design
choice you don't want to track the code hierarchy.

This has been part of my long-term plan since about eighteen months
ago.  It's had a major, *major* impact on the language design.  In
particular it's one of the reasons visibility and implication 
can be declared separately from the menu structure.

If you go back and look at the language design from this point of view,
I think many things you might not have seen the point of before will
become clearer.

Note well two points:

1.  This can't practicably be done in CML1.  CML1 markup has crappy
locality; the metadata analyzer would have to carry around way too
much state about other symbols in order to generate the markup for any
given one.

2. This design basically demands a single-apex tree.  Otherwise I don't
think you can get the consistency-checking right -- I haven't been 
able to invent a method to do it, anyway.

So if you want this, please start backing CML2 and contributing in a
positive way.  I know how to get where you want to go.  CML2 is
specifically intentionally designed to make it possible, and I have the
will to follow through.

But for these good things to happen, CML2 *got to go in*.  I cannot both
continue the enormous effort of maintaining a parallel rulebase
and move the ball forward towards automatic rule generation from metadata
and other good things.  That's what I want to be working on.
-- 
		<a href="http://www.tuxedo.org/~esr/">Eric S. Raymond</a>

  reply	other threads:[~2002-02-16 16:18 UTC|newest]

Thread overview: 137+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-02-15 16:55 Disgusted with kbuild developers Jeff Garzik
2002-02-15 16:51 ` Eric S. Raymond
2002-02-15 17:25   ` Dave Jones
2002-02-15 19:01     ` Eric S. Raymond
2002-02-15 17:25   ` Larry McVoy
2002-02-15 17:13     ` Eric S. Raymond
2002-02-15 17:27   ` Tom Rini
2002-02-15 17:31   ` Jeff Garzik
2002-02-15 17:25     ` Eric S. Raymond
2002-02-15 18:24       ` Alexander Viro
2002-02-15 18:55         ` Eric S. Raymond
2002-02-15 19:29           ` Arjan van de Ven
2002-02-15 19:14             ` Eric S. Raymond
2002-02-15 19:58               ` Arjan van de Ven
2002-02-15 19:54                 ` Eric S. Raymond
2002-02-15 20:38                   ` Dave Jones
2002-02-15 20:45                     ` Eric S. Raymond
2002-02-16  8:37                       ` Jeff Garzik
2002-02-15 21:34                     ` Alan Cox
2002-02-15 20:59                       ` Eric S. Raymond
2002-02-15 21:47                         ` Alan Cox
2002-02-15 21:46                           ` Eric S. Raymond
2002-02-15 22:40                             ` Alan Cox
2002-02-15 22:08                               ` Eric S. Raymond
2002-02-15 22:52                                 ` Alan Cox
2002-02-16  9:50                                   ` Martin Dalecki
2002-02-16  4:57                               ` Jeff Garzik
2002-02-16  7:41                                 ` Gerd Knorr
2002-02-16 12:36                                 ` Alan Cox
2002-02-16 14:10                                   ` Eric S. Raymond
2002-02-15 22:44                             ` Rob Landley
2002-02-19  8:04                             ` Pavel Machek
2002-02-19 21:13                               ` Eric S. Raymond
2002-02-15 22:08                     ` Robert Love
2002-02-15 22:28                       ` Dave Jones
2002-02-15 22:11                         ` Eric S. Raymond
2002-02-15 23:07                           ` Alan Cox
2002-02-16 15:54                             ` Eric S. Raymond
2002-02-16 16:38                               ` Alan Cox
2002-02-16 16:22                                 ` Eric S. Raymond
2002-02-16 16:52                                   ` Jeff Garzik
2002-02-16 17:10                                   ` Alan Cox
2002-02-16 16:50                                 ` Jeff Garzik
2002-02-16  5:05                         ` Jeff Garzik
2002-02-16 11:23                           ` Matthias Andree
2002-02-16 14:52                           ` Eric S. Raymond
2002-02-16 15:36                             ` Jeff Garzik
2002-02-16 15:52                               ` Eric S. Raymond [this message]
2002-02-16 16:34                                 ` Possible breakthrough in the CML2 logjam? Jeff Garzik
2002-02-16 16:57                                   ` Eric S. Raymond
2002-02-16 17:29                                     ` Jeff Garzik
2002-02-16 17:32                                       ` Eric S. Raymond
2002-02-16 19:01                                         ` Jeff Garzik
2002-02-17  0:57                                         ` Felix von Leitner
2002-02-20  9:07                                           ` 'revolting' overemphasizes personal beliefs && religion bert hubert
2002-02-16 17:37                                     ` Possible breakthrough in the CML2 logjam? Larry McVoy
2002-02-16 17:16                                       ` Eric S. Raymond
2002-02-16 17:48                                         ` Jeff Garzik
2002-02-16 17:50                                         ` Larry McVoy
2002-02-18 10:06                                           ` Rogier Wolff
2002-02-15 20:42                   ` Disgusted with kbuild developers Larry McVoy
2002-02-15 20:39                     ` Eric S. Raymond
2002-02-15 21:15                       ` Dave Jones
2002-02-15 20:58                         ` Eric S. Raymond
2002-02-15 21:49                           ` Dave Jones
2002-02-15 22:04                             ` Eric S. Raymond
2002-02-15 22:41                               ` Dave Jones
2002-02-15 23:26                               ` Rob Landley
2002-02-16  6:35                                 ` Eric S. Raymond
2002-02-16 18:20                                   ` Rob Landley
2002-02-16  9:21                                 ` David Woodhouse
2002-02-16 13:57                                   ` Eric S. Raymond
2002-02-16 15:21                                     ` Adam Kropelin
2002-02-16 14:51                                   ` David Woodhouse
2002-02-16 15:56                                     ` Eric S. Raymond
2002-02-16  5:12                               ` Jeff Garzik
2002-02-15 22:09                           ` Richard Gooch
2002-02-15 21:50                             ` Eric S. Raymond
2002-02-15 22:27                               ` Dave Jones
2002-02-15 22:19                                 ` Eric S. Raymond
2002-02-16  0:15                                   ` Nicolas Pitre
2002-02-16 16:00                                     ` Eric S. Raymond
2002-02-16 16:53                                       ` Nicolas Pitre
2002-02-17  0:05                                     ` Felix von Leitner
2002-02-15 22:38                               ` Larry McVoy
2002-02-15 22:22                                 ` Eric S. Raymond
2002-02-15 23:23                                 ` Matthias Andree
2002-02-15 23:29                                   ` Dave Jones
2002-02-15 23:37                                     ` David Lang
2002-02-16  2:11                                     ` Matthias Andree
2002-02-15 23:36                                   ` Larry McVoy
2002-02-15 23:51                                     ` David Lang
2002-02-16  0:49                                       ` Alan Cox
2002-02-16  0:08                                     ` Ben Greear
2002-02-18  9:41                                     ` Rogier Wolff
2002-02-18 16:07                                       ` Larry McVoy
2002-02-16  9:53                                   ` Martin Dalecki
2002-02-16 13:04                                     ` Matthias Andree
2002-02-16 15:53                                       ` Michal Jaegermann
2002-02-17 23:06                                         ` Matthias Andree
2002-02-15 22:41                               ` Alan Cox
2002-02-15 23:37                               ` Alexander Viro
2002-02-16  1:14                                 ` William Scott Lockwood III
2002-02-16  1:59                                   ` Larry McVoy
2002-02-16  2:08                                     ` William Scott Lockwood III
2002-02-17  4:36                                       ` Daniel Phillips
2002-02-16  4:17                                     ` John Jasen
2002-02-16  4:20                                       ` William Scott Lockwood III
2002-02-15 22:27                             ` yodaiken
2002-02-15 22:19                           ` Cort Dougan
2002-02-16  8:33                           ` Jeff Garzik
2002-02-16 14:53                             ` Eric S. Raymond
2002-02-16 16:55                               ` Alan Cox
2002-02-15 22:21                       ` Robert Love
2002-02-15 22:29                         ` That Linux Guy
2002-02-16  5:02                           ` Jeff Garzik
2002-02-16 14:50                             ` Eric S. Raymond
2002-02-16 15:33                               ` CML2 feedback (was Re: Disgusted with kbuild developers) Jeff Garzik
2002-02-16 16:06                               ` Disgusted with kbuild developers Nicolas Pitre
2002-02-16 16:08                                 ` Eric S. Raymond
2002-02-16 16:37                                   ` Jeff Garzik
2002-02-16 17:34                                   ` Nicolas Pitre
2002-02-17  6:46                                     ` Matt D. Robinson
2002-02-16 18:29                                   ` Of Bundling, Dao and Cowardice Alexander Viro
2002-02-16 19:16                                     ` That Linux Guy <thatlinuxguy@hotmail.com>,Re: " Rik van Riel
2002-02-18 17:33                                     ` bill davidsen
2002-02-20 19:53                                     ` Oliver Xymoron
2002-02-16 22:29                                   ` Disgusted with kbuild developers Joel Becker
2002-02-17  0:05                                 ` Rob Landley
2002-02-17  0:26                                   ` Nicolas Pitre
2002-02-17 23:10                                 ` Matthias Andree
2002-02-16  9:46                           ` Martin Dalecki
2002-02-15 21:24           ` Rob Landley
2002-02-16  9:30           ` Martin Dalecki
2002-02-15 17:02 ` Rik van Riel
2002-02-15 17:35   ` Alexander Viro
2002-02-15 18:00 ` Michael Alan Dorman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20020216105219.A31001@thyrsus.com \
    --to=esr@thyrsus.com \
    --cc=jgarzik@mandrakesoft.com \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox