From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, MAILING_LIST_MULTI,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 6853 invoked from network); 14 Jun 2023 01:59:31 -0000 Received: from minnie.tuhs.org (50.116.15.146) by inbox.vuxu.org with ESMTPUTF8; 14 Jun 2023 01:59:31 -0000 Received: from minnie.tuhs.org (localhost [IPv6:::1]) by minnie.tuhs.org (Postfix) with ESMTP id D9D3140C5F; Wed, 14 Jun 2023 11:59:23 +1000 (AEST) Received: from mail-vk1-xa2a.google.com (mail-vk1-xa2a.google.com [IPv6:2607:f8b0:4864:20::a2a]) by minnie.tuhs.org (Postfix) with ESMTPS id 1D68640C0E for ; Wed, 14 Jun 2023 11:59:09 +1000 (AEST) Received: by mail-vk1-xa2a.google.com with SMTP id 71dfb90a1353d-46e8e9ded51so3407e0c.2 for ; Tue, 13 Jun 2023 18:59:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=dartmouth.edu; s=google1; t=1686707947; x=1689299947; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=q1uLYR/Q1KSQD3+fnGosUt2nMaX+nrgUMjVzBRdHr94=; b=F7hpBfyhAku8Q6Wk4LXxOqXOj47EjDd+mEmgZfKt0asFoi0qgzjlIpGJgKTgKR+/V5 RbOJMgAJwkf4bDgd2PelR0pteSusoUKRMw1JWvKMzsz6ozEP0sIJzX6l+kFh7ynGEflY DYxaMsV/c/Eax5YYdJZfozH/GfApgDwKnq/1Z/hYpPzNEJhDnIrVUjVtqwZvgF5FAEWx LBrO1uUuzy+tEtEu7Nn2rpRwjXiABGgOknvGbdOeUOgzgFaQ6R5lKXhOjus4drh5tc9i nyrz3OKzcLr0t8J8JjvjZ2tSgXKgdHF+UihEqcatuQU/b0x02IP0557xGNQHSngdWBxy PkvA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686707947; x=1689299947; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=q1uLYR/Q1KSQD3+fnGosUt2nMaX+nrgUMjVzBRdHr94=; b=C1vA3vh52Dc5gu4Z9FkiJwgDZlt5mtJaxF74eTt2C4zNWuvXu5ukkgg3I7+4I0OJyu rcIsFR1zh1GThGpWRLjbKP1AaHc8AZ2sjvrF7GYn3RryhKZEOug04wPuRaOl5YUwlFE/ WAVuUQlWP/m+AbXNDhG5fea4Fg9tIGVUEwx4lz6xNOU3CSm3q4c7C9VMiCKamva7NE5U pgBl7khltpn0c240/TV9FYoJqn3N0QmuwKfeDJuJ05RriFHvci0RW8xhXaFBCJyHq1WM iRd8mbGJPbUVLeUWqjEKhPxXWnkZYcIfbH4/PTx8QVk2399b5ENkWHCviktS/a8iP55k 44ZQ== X-Gm-Message-State: AC+VfDwtGRCYt2rLv7ridT9QwG+GaNNl7OZkB3iUQHEcYOl1ULoIoiOe FgdxQeIyPX+oNfsSzghPBbfpz9r0OGxK44PkOZFuhXlSz52LHYqD X-Google-Smtp-Source: ACHHUZ58DDOx6kMY4702FfzBgpqhu56SJrR59csXV424V7cmwZfMzg4bkjzzwFQkUBb7HZXV4oNMdS4NVseImLQ4vOE= X-Received: by 2002:a67:f298:0:b0:426:48f7:9ecd with SMTP id m24-20020a67f298000000b0042648f79ecdmr7857119vsk.28.1686707947551; Tue, 13 Jun 2023 18:59:07 -0700 (PDT) MIME-Version: 1.0 From: Douglas McIlroy Date: Tue, 13 Jun 2023 21:58:51 -0400 Message-ID: To: TUHS main list Content-Type: text/plain; charset="UTF-8" Message-ID-Hash: XTIJDA6YETIY3XIMFN52MN2REZTCNVNB X-Message-ID-Hash: XTIJDA6YETIY3XIMFN52MN2REZTCNVNB X-MailFrom: douglas.mcilroy@dartmouth.edu X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.6b1 Precedence: list Subject: [TUHS] Re: undiagnosed pic error List-Id: The Unix Heritage Society mailing list Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: There may be a simple generic way to correct pic's habit of accepting any set of object modifiers on any object, but obeying only a compatible subset. Pic already collects a bit vector of modifier types attached to the current object. If that were extended with a few more bits that designate the object types, the size, B, of the bit vector would be about 35--an easy fit in one 64-bit word. Then a BxB bit matrix could record both modifier/modifier incompatibilities and object/modifier incompatibilities. The collected bit vector needs to be tested against the matrix once per object definition. It seems to be harder to catch duplication of modifiers, requiring extra code at all points where bits are set. Nevertheless, this kind of error also merits detection. Some questions Does anybody think the issue is not worth addressing? Is there a better scheme than that suggested above? Is the scheme adequate? It would not, for example, catch a three-way incompatibility that does not entail any pairwise incompatibility, should such an incompatibility exist. Any other thoughts? Doug