From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: 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_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,HTML_MESSAGE,MAILING_LIST_MULTI autolearn=ham autolearn_force=no version=3.4.4 Received: from minnie.tuhs.org (minnie.tuhs.org [50.116.15.146]) by inbox.vuxu.org (Postfix) with ESMTP id EC2FF2949C for ; Fri, 12 Jul 2024 20:20:45 +0200 (CEST) Received: from minnie.tuhs.org (localhost [IPv6:::1]) by minnie.tuhs.org (Postfix) with ESMTP id 5F0CE4218C; Sat, 13 Jul 2024 04:20:44 +1000 (AEST) Received: from mail-pj1-x1034.google.com (mail-pj1-x1034.google.com [IPv6:2607:f8b0:4864:20::1034]) by minnie.tuhs.org (Postfix) with ESMTPS id 5DB034213C for ; Sat, 13 Jul 2024 04:20:39 +1000 (AEST) Received: by mail-pj1-x1034.google.com with SMTP id 98e67ed59e1d1-2c9785517c0so1829114a91.0 for ; Fri, 12 Jul 2024 11:20:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1720808438; x=1721413238; darn=tuhs.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=NcefT3YvXEPed5R6pZUH70Dmcn+XmaqPrC0MQ8AUKoI=; b=VlWigOdDLO5Fbt5kyf5gTpK/GIwtsbHrhsbdpFJqxfaGoXgh5ZTfw+MYsbpTTKLz9s 0QvazifRPnOplZycUtfH3hv4xw1wxGe2cfjGYM/jNF+X7ACWWaeH377pm0hQa3dTJMYJ ngdLcLWaiCM07gqaFoVN+XeoJqr2/9qbLMdHJPBSkfe6EMGQ2LLqO3GIz/vzMIGWtuOA eV/PedDj0M2zD0aCxGdjDG5sQxir9oRsaM58wpFlZYma9SLlXBZX7nbCWqpPYEwnIFLw VmEsLkJWcPIYuHIuYSvpnni6xZYq426iB3EsrY+taI2+4ue8n2TkdWibrV9G+y/QfZwo qTkA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1720808438; x=1721413238; h=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=NcefT3YvXEPed5R6pZUH70Dmcn+XmaqPrC0MQ8AUKoI=; b=Z4NWrxTpw2xAknVhj3qERluTcDl11NUDt/+gkmegVU9Q0AQr84RjTl9G45RJ3COHxK 9NtqUuC+y7XYhM2P61ZXdekBikjQXwT6gYD8HWuMCwDoyH5efYWEeLuINuYnas7miS8g 3yemQLh+L1GUTZFRi8N2327u9NZ5WlG+yoHpiH3UcJti2EIkLxT/B2tlDt14CuSci/Qr 0d3TjAPBQgaiqBN2o6RfuQBjmni4pNRV6Tka/DTf+WS7iwnyy4Cpv95kYk/O/GLFzkYp g3/bPn/THmctYIjWoCzuTLetBMfcftzh7VLdV6wFcXdb3/PuDmLKu9uV88KgFblpinic spsQ== X-Gm-Message-State: AOJu0Yw3nYJ/HQ8FOaTYBlpSLNVnRxKaPIgOq72uF/v+0ZnmZL4NSuNf YVkSokagEg+HK4y0FSFkglJvMrVIYV9yGv3tIaXheP4M8Me+HxUJO6LgqCfMDaUeLOY6JxfRb2y pR4vCwfUx4R5OEfaqmES1Q6KGZmkpTQ== X-Google-Smtp-Source: AGHT+IFVRhKeEY+VdM8SaZoK7hvBF2TYhjBlS/MKK+IX9sWJ3XMUO4B22274z7MhslXaNsDqjG51HjT7Ys792ANOazo= X-Received: by 2002:a17:90a:a384:b0:2c4:ab32:b71c with SMTP id 98e67ed59e1d1-2ca35bf0752mr11058802a91.8.1720808438330; Fri, 12 Jul 2024 11:20:38 -0700 (PDT) MIME-Version: 1.0 References: <744f454d-36a3-4a76-a7fe-9934a77bd2a0@insinga.com> In-Reply-To: <744f454d-36a3-4a76-a7fe-9934a77bd2a0@insinga.com> From: Paul Winalski Date: Fri, 12 Jul 2024 14:20:27 -0400 Message-ID: To: Aron Insinga Content-Type: multipart/alternative; boundary="000000000000b17e11061d10efb9" Message-ID-Hash: EZJENPGQDASLBOZKA36FJERRWN7VRSL7 X-Message-ID-Hash: EZJENPGQDASLBOZKA36FJERRWN7VRSL7 X-MailFrom: paul.winalski@gmail.com 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: Computer Old Farts Followers X-Mailman-Version: 3.3.6b1 Precedence: list Subject: [COFF] Re: system implementation languages e.g. BLISS (was: mental architecture models, Anyone ever heard of teaching a case study of Initial Unix?) List-Id: Computer Old Farts Forum Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: --000000000000b17e11061d10efb9 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, Jul 12, 2024 at 1:45=E2=80=AFPM Aron Insinga wrot= e: > When verifying that, I found something I did not remember, that in > BLISS-16 and -32 (and I would guess also -64), but not -36 (the > word-addressed PDP-10), one could declare 8-bit signed and unsigned data: > > OWN > X: BYTE SIGNED, > Y: BYTE; > > So the concepts of 'type' in BLISS, at least regarding data size and > representation, can get a little complicated (not to be confused with > COMPLEX :-) ). > > Yes, BLISS-16, BLISS-32, and BLISS-64 have BYTE (and WORD also for BLISS-32/64 IIRC) as a way to allocate data items smaller than a BLISS value. Such a declaration also attaches an implicit default field reference to the identifier. In the case of BYTE SIGNED it is <0, 8, 1> and for BYTE <0,8,0>. So the expression: Y =3D .X was, in its completely expanded form: Y<0,8,0> =3D .X<0,8,1> Tying the BYTE and SIGNED attributes to the identifier cleaned up the clutter of all those angle-bracket field references. Similarly BLISS has VECTOR (one-dimensional, 0-based array), BLOCK (equivalent of C's struct), and BLOCKVECTOR (array of structures) data declaration attributes that carry implicit field and addressing semantics. Again, a convenience for the programmer that alleviates clutter and makes the program more readable. -Paul W. --000000000000b17e11061d10efb9 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
On Fri, Jul 12, 2024 at 1:45=E2=80=AFPM A= ron Insinga <aki@insinga.com> = wrote:
=20 =20 =20
When verifying that, I found something I did not remember, that in BLISS-16 and -32 (and I would guess also -64), but not -36 (the word-addressed PDP-10), one could declare 8-bit signed and unsigned data:
OWN
=C2=A0=C2=A0=C2=A0 X: BYTE SIGNED,
=C2=A0=C2=A0=C2=A0 Y: BYTE;
So the concepts of 'type' in BLISS, at least regarding data s= ize and representation, can get a little complicated (not to be confused with COMPLEX :-) ).

Yes, BLISS-16, BLISS-32, and BLISS-= 64 have BYTE (and WORD also for BLISS-32/64 IIRC) as a way to allocate data= items smaller than a BLISS value. =C2=A0 Such a declaration also attaches = an implicit default field reference to the identifier.=C2=A0 In the case of= BYTE SIGNED it is <0, 8, 1> and for BYTE <0,8,0>.=C2=A0 So the= expression:

Y =3D .X

was= , in its completely expanded form:

Y<0,8,0> = =3D .X<0,8,1>

Tying the BYTE and SIGNED attr= ibutes to the identifier cleaned up the clutter of all those angle-bracket = field references.

Similarly BLISS has VECTOR (one-= dimensional, 0-based array), BLOCK (equivalent of C's struct), and BLOC= KVECTOR (array of structures) data declaration attributes that carry implic= it field and addressing semantics.=C2=A0 Again, a convenience for the progr= ammer that alleviates clutter and makes the program more readable.

-Paul W.
--000000000000b17e11061d10efb9--