public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: "Eric S. Raymond" <esr@thyrsus.com>
To: John Stoffel <stoffel@casc.com>
Cc: cate@dplanet.ch, Peter Samuelson <peter@cadcamlab.org>,
	CML2 <linux-kernel@vger.kernel.org>,
	kbuild-devel@lists.sourceforge.net
Subject: Hierarchy doesn't solve the problem
Date: Thu, 3 May 2001 03:04:31 -0400	[thread overview]
Message-ID: <20010503030431.A25141@thyrsus.com> (raw)
In-Reply-To: <20010427193501.A9805@thyrsus.com> <15084.12152.956561.490805@gargle.gargle.HOWL> <20010429183526.B32748@thyrsus.com> <15085.37569.205459.898540@gargle.gargle.HOWL> <20010430133932.B28849@thyrsus.com> <20010430141623.A15821@cadcamlab.org> <200 <3AF00C53.5EEE8E01@math.ethz.ch> <20010502134955.A19257@thyrsus.com> <15088.27159.630786.913424@gargle.gargle.HOWL>
In-Reply-To: <15088.27159.630786.913424@gargle.gargle.HOWL>; from stoffel@casc.com on Wed, May 02, 2001 at 04:12:07PM -0400

John Stoffel <stoffel@casc.com>:
> He's saying that when you find the first invalid assertion, such as
> not having CONFIG_RTC defined, when reading the .config file, you
> should prompt for a fix.  Then once the input is taken, continue your
> checks, prompting for each following problem as needed. 

The problem lies in that innocent-sounding phrase "prompt for a fix".
Generating such a prompt is a far deeper problem than you seem to realize.
  
> No, we're just asking you to make the CML2 parser more tolerant of old
> and possibly broken configs.

The parser is not the problem.  The parser tolerates old, broken
configs quite happily.  Gives you a nice pop-up message when it hits
an invalid symbol.  No, the problem is that y*ou're asking me to make
the deduction machinery solve a problem that is (a) ill-defined and
(b) subject to a 3^n combinatorial explosion.
 
> I haven't looked at the parser in any detail, but I assume that there
> are heirarchal configuration settings.  When there is a mis-match,
> where a sub-option conflicts with an upper option, how hard would it
> be to print a warning, and just reset the sub-option to an acceptable
> state?

Clever idea -- not so clever that stupid me didn't think of it six months
ago, but clever.  Might even work if the constraints always obeyed a neat
hierarchy.  They don't. The constraints can reach across the tree.

In many cases there is no way to define "upper" or "lower".  (X86 and
SMP) implies RTC!=n is actually a good example.  Here's where they fit
in the tree:

 main                   'Linux Kernel Configuration System'
     arch               'Processor type'
         X86            'Intel or compatible 80x86 processor'
     generic            'Architecture-independent feature selections'
         SMP            'Symmetric Multi-Processing support'
     archihacks         'Architecture-specific hardware hacks'
         RTC            'Enhanced Real Time Clock Support'

Yes, that's right -- they're all at the same level.  OK, X86 is frozen
by hypothesis.  So now give me a rule for telling which of SMP and RTC
is "superior".  Note that in order to make the rule usable by the
deducer, it can't know anything about the semantics of the symbols.

Do you sense an abyss yawning beneath you yet?  If not, hold on.
You'll see it shortly.

I started to write up a full explanation but I think I'm going to post
that separately.  It's long.
-- 
		<a href="http://www.tuxedo.org/~esr/">Eric S. Raymond</a>

Never could an increase of comfort or security be a sufficient good to be
bought at the price of liberty.
	-- Hillaire Belloc

  reply	other threads:[~2001-05-03  7:04 UTC|newest]

Thread overview: 59+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-04-27 23:35 CML2 1.3.1, aka "I stick my neck out a mile..." Eric S. Raymond
2001-04-29 15:12 ` John Stoffel
2001-04-29 22:35   ` Eric S. Raymond
2001-04-29 22:43     ` [kbuild-devel] " Eric S. Raymond
2001-04-30 16:28     ` John Stoffel
2001-04-30 17:39       ` Eric S. Raymond
2001-04-30 19:16         ` Peter Samuelson
2001-04-30 19:25           ` Eric S. Raymond
2001-05-01  9:23             ` Requirement of make oldconfig [was: Re: [kbuild-devel] Re: CML2 1.3.1, aka ...] Giacomo A. Catenazzi
2001-05-01 16:31               ` Eric S. Raymond
2001-05-01 21:35                 ` Olivier Galibert
2001-05-01 22:26                   ` Tom Rini
2001-05-02 13:32           ` Giacomo Catenazzi
2001-05-02 17:49             ` Eric S. Raymond
2001-05-02 20:12               ` John Stoffel
2001-05-03  7:04                 ` Eric S. Raymond [this message]
2001-05-03  7:34                   ` Hierarchy doesn't solve the problem Urban Widmark
2001-05-03  7:46                     ` Eric S. Raymond
2001-05-03 14:33                       ` Juan Quintela
2001-05-03 16:16                         ` Eric S. Raymond
2001-05-03 22:20                       ` Mike Castle
2001-05-03 12:32                 ` Requirement of make oldconfig [was: Re: [kbuild-devel] Re: CML2 1.3.1, aka ...] Horst von Brand
2001-05-03 12:47                   ` Alan Cox
2001-05-03 13:24                     ` Horst von Brand
2001-05-03 14:40                       ` Juan Quintela
2001-05-03 16:07                       ` Eric S. Raymond
2001-05-03 16:04                   ` Eric S. Raymond
2001-05-03 17:36                     ` Alan Cox
2001-04-30  1:36   ` CML2 1.3.1, aka "I stick my neck out a mile..." Anton Altaparmakov
2001-04-30  1:41     ` Eric S. Raymond
2001-04-30  2:13       ` [kbuild-devel] " John Cowan
2001-04-30  2:24       ` Alexander Viro
2001-04-30  5:41         ` David Emory Watson
2001-04-30  5:50           ` Alexander Viro
2001-04-30  6:12             ` David Emory Watson
2001-04-30  6:53               ` Eric S. Raymond
2001-04-30  7:11                 ` [OT] " Jeff Garzik
2001-04-30  7:17                 ` Alexander Viro
2001-04-30 14:25                   ` Kai Henningsen
2001-04-30 15:54                   ` [kbuild-devel] " Eric S. Raymond
2001-04-30 10:57                 ` John Cowan
2001-04-30 13:30               ` David Woodhouse
2001-04-30 13:29             ` David Woodhouse
2001-04-30  7:05         ` volodya
2001-04-30  7:23           ` Alexander Viro
2001-04-30  7:40             ` Eric S. Raymond
2001-04-30  9:09               ` [Moving rapidly offtopic] " Henning P. Schmiedehausen
2001-04-30 16:16               ` nick
2001-04-30 17:12                 ` [kbuild-devel] " Eric S. Raymond
2001-04-30 17:20                   ` [OT] " Jeff Garzik
2001-04-30 17:25                     ` Rik van Riel
2001-04-30 19:44                   ` [kbuild-devel] " Gerhard Mack
2001-04-30 19:47                     ` nick
2001-04-30  3:26       ` volodya
2001-04-30  7:52     ` Anton Altaparmakov
2001-04-30  8:03       ` Eric S. Raymond
2001-04-30 16:17         ` volodya
2001-04-30  8:13       ` Anton Altaparmakov
     [not found] ` <15084.12830.973535.153706@gargle.gargle.HOWL>
2001-04-29 22:41   ` Eric S. Raymond

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=20010503030431.A25141@thyrsus.com \
    --to=esr@thyrsus.com \
    --cc=cate@dplanet.ch \
    --cc=kbuild-devel@lists.sourceforge.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=peter@cadcamlab.org \
    --cc=stoffel@casc.com \
    /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