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 15081 invoked from network); 17 Jun 2023 15:53:38 -0000 Received: from minnie.tuhs.org (2600:3c01:e000:146::1) by inbox.vuxu.org with ESMTPUTF8; 17 Jun 2023 15:53:38 -0000 Received: from minnie.tuhs.org (localhost [IPv6:::1]) by minnie.tuhs.org (Postfix) with ESMTP id 5207A40BC5; Sun, 18 Jun 2023 01:53:31 +1000 (AEST) Received: from mail-qk1-x733.google.com (mail-qk1-x733.google.com [IPv6:2607:f8b0:4864:20::733]) by minnie.tuhs.org (Postfix) with ESMTPS id 6CA4D40BC4 for ; Sun, 18 Jun 2023 01:53:18 +1000 (AEST) Received: by mail-qk1-x733.google.com with SMTP id af79cd13be357-76241c98586so72160185a.0 for ; Sat, 17 Jun 2023 08:53:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=dartmouth.edu; s=google1; t=1687017197; x=1689609197; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=FU5FkDAm1GoQWhf75ZM/Ato4jl5pyiQEC3hNQ2/a+N4=; b=y980ElzTLka/d5rDFqNNo8VhKqlM04F0ojaOv+XzReeog4lYV2KIcRvURZK6B2yJV2 UKr5pDNWHMpg1er+STmnr78hzZhsCNP8BWtplZcMrwVpasSDp/EqInPSTtsoF49q3LL2 9SW7m5VZHj0yT5Byfa5ZZ8kGUuJ9704KFAkQe9qUnq94bt46C2Vi2ogcwFB1KsEQSmyl QTUdBs8I5b/eUHc9GQqWLFyDfReN3dv92jJuDZ2fY+KF4gXdG+AcW6ND2ZgEiLDnTA77 9RSOAgLEzBkFJ1tOUwD7sJ5ljFgKijkmzK8tsVM+PeQOxd9tCxnXOWTy/NC+NX3tZZQl OMDg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687017197; x=1689609197; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=FU5FkDAm1GoQWhf75ZM/Ato4jl5pyiQEC3hNQ2/a+N4=; b=M7Odcf5ZYJUWg6OFfSY/ALiJXa0jK/nkcpZ9WkSTlrGZORYiMmg9zgZoI5NSPwKW7U HoqqgDxZB011CD1U6fMOmFQpNB5oPlva+FtRxHOKSUEG4XeVMEZtgcHBqY1zzBIeZDey vgmkmMMVvobwejLuE8iYPV4uEqmvydPwyzn07dXUAcU2nPx2/yW88lUZFtfkgTIR6elt 7cGnKmVFbOEzK/9WRfQBwLFfBM5kSlGomLEZlPX8q1uzBq1axv0kDW4WtA4PDW/cM7wl gk2RIZzk35lATOpyzrcpvMDqMrzhvQ69yfdMuS3I9qm71AbT+OA+GZaI0mpmJYHF1zrq kzhA== X-Gm-Message-State: AC+VfDzJfk/qcdSoMO4WWFaKXVJ7+xZhwJHc95omq9ZvkkX4St8xQmxZ 2jA270haVTcdHo0KP68u+W7Z9Kie/o2Cv63E10v6HA== X-Google-Smtp-Source: ACHHUZ4hUs1GRa/A45vaF7hgmbRt5CQ2LZwTbxvcBT1Zwj8FyQgcGTpGkHV+Gy03ocxvbTPw+Mi9v+5S7om7KaFYmV0= X-Received: by 2002:a05:620a:2721:b0:75b:23a0:de9e with SMTP id b33-20020a05620a272100b0075b23a0de9emr5858173qkp.28.1687017196847; Sat, 17 Jun 2023 08:53:16 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Douglas McIlroy Date: Sat, 17 Jun 2023 11:53:00 -0400 Message-ID: To: Marc Donner Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Message-ID-Hash: L5T5XYRF7FJCEJ7HHUTYAP5MKF57LFOV X-Message-ID-Hash: L5T5XYRF7FJCEJ7HHUTYAP5MKF57LFOV 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 CC: TUHS main list 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: It's fairly sparse, e.g. "at" is compatible with most everything except "from" and "to". Setup might look like this: long int compat[] =3D { [HAS_AT] =3D HAS_FROM | HAS_TO, On Wed, Jun 14, 2023 at 6:42=E2=80=AFAM Marc Donner = wrote: > > How sparse is the 35x35 matrix? For comprehensibility would it be the be= st way to do it? > > On Tue, Jun 13, 2023 at 9:59 PM Douglas McIlroy wrote: >> >> 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 > > -- > =3D=3D=3D=3D=3D > nygeek.net > mindthegapdialogs.com/home