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, HTML_MESSAGE,MAILING_LIST_MULTI autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 11920 invoked from network); 28 Jan 2023 15:40:54 -0000 Received: from minnie.tuhs.org (50.116.15.146) by inbox.vuxu.org with ESMTPUTF8; 28 Jan 2023 15:40:54 -0000 Received: from minnie.tuhs.org (localhost [IPv6:::1]) by minnie.tuhs.org (Postfix) with ESMTP id 0140442524; Sun, 29 Jan 2023 01:40:18 +1000 (AEST) Received: from mail-ej1-f50.google.com (mail-ej1-f50.google.com [209.85.218.50]) by minnie.tuhs.org (Postfix) with ESMTPS id AF4DE42511 for ; Sun, 29 Jan 2023 01:40:07 +1000 (AEST) Received: by mail-ej1-f50.google.com with SMTP id gs13so10284108ejc.0 for ; Sat, 28 Jan 2023 07:40:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20210112.gappssmtp.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=MD16dt0QrX96KhlJ6UaQLWHTUIlxTx7OyRyb/Wf3KvM=; b=0jROBnck+D5ArABzWN5WJU5AKEkBln+UZnKzYO5m4W6s4AIcSQAakL4T3H9LUgpT29 n6hGS6/ryLRUwLmomRyjXAHP2a8w6WzWEzeDeKVVd/TJtgq8+/raV137dBaJ8xvnFLFj +2tXyoOA7yl8LknkdMT3DWSyYUi8HLJI4g7jAbn87MxcGsJ/7jnuD3VFta6di9XwLnNA GIpYuDFR5TaGOAclHfGJAnbtivrc312MxzoJVTaVCxP45hLlem9PhvFXBCgyJZvPFGHr 5MntUyQeFradzrXNF8V369arTf/ETKPfUdTaJYCwzaNGmGAJGlsjJqHXrNDE8H0G6XlC kiCg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; 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=MD16dt0QrX96KhlJ6UaQLWHTUIlxTx7OyRyb/Wf3KvM=; b=Hg+6lsOtJVvDXvlHS4BaPT0awstW6Su1Ek2h4hkIMW/uGiBlGAgZzjGo77nLzCIYlQ RLfr/r1ny/PToG4/f2eBwfqJBWZVv9M3LLkFUyboJutavHjebqfBjBQQNSXTutgDZMFd pDlXi3gVrJCDvaLsYqmC9++rNElC1p7n7c2iO0/yH8rmkLo34RrkJQd0FKg2Sl+fZNpm 2WQ9Us4GjMwVY8jDNsett/tqs+1wmGBhxIbJUx0ecfGdbeQmcK0qrZ54XT1cpNOHwilD U403R4LDwzA6hjl+z62YF4Pq8aqr5EDjnTOZYbhNrM+6m3XMEuxEIzDUDWB8PZNuM4Zm R/Gw== X-Gm-Message-State: AO0yUKVtiEPtdYoo5U4jSpfPsTQENniX8ceX6pyurGj2zVgSp7KGVid8 SseWq99S64Y9sQPScZbluybi/27B+uVv1xxwEPWjtQ== X-Google-Smtp-Source: AMrXdXtPmv4meOcX8s6I/cvDTzysYh/9dL3vNPkjTiqOe0irfjSJ8Wfa6tMSs5Cdety4E01RVvWjC/8QTpdu13Br5pQ= X-Received: by 2002:a17:906:3042:b0:877:ec5e:87ce with SMTP id d2-20020a170906304200b00877ec5e87cemr4128889ejd.262.1674920345925; Sat, 28 Jan 2023 07:39:05 -0800 (PST) MIME-Version: 1.0 References: <0C5D8AF8-BAB2-48B5-854B-34E3A949DE50@planet.nl> <0778FF74-7DF5-4072-95F3-5FF5BEB4CC33@planet.nl> <7wpmaz9g2p.fsf@junk.nocrew.org> <697E8876-C2A9-4FE6-A2F7-B4DCEC3BA2C7@planet.nl> In-Reply-To: <697E8876-C2A9-4FE6-A2F7-B4DCEC3BA2C7@planet.nl> From: Warner Losh Date: Sat, 28 Jan 2023 08:38:55 -0700 Message-ID: To: Paul Ruizendaal Content-Type: multipart/alternative; boundary="0000000000003f10fb05f354c899" Message-ID-Hash: UJ5D3BBLF6Y6NLBHE4AZ32IEPTFOCMFB X-Message-ID-Hash: UJ5D3BBLF6Y6NLBHE4AZ32IEPTFOCMFB X-MailFrom: wlosh@bsdimp.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-tuhs.tuhs.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: The Eunuchs Hysterical Society X-Mailman-Version: 3.3.6b1 Precedence: list Subject: [TUHS] Re: Earliest UNIX Workstations? List-Id: The Unix Heritage Society mailing list Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: --0000000000003f10fb05f354c899 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Sat, Jan 28, 2023, 4:05 AM Paul Ruizendaal wrote: > > > On 28 Jan 2023, at 10:14, Lars Brinkhoff wrote: > > > > Warner Losh wrote: > >> Rich Salz wrote: > >>> I'd like to know what the first versions of X were written in > >> > >> Without the earlier versions' source, it's hard to answer this > question... > > > > V source code exists, right? It seems likely W would have been written > > in the same language as W. And that early X would also be the same. > > Another source of information would be to ask Bob Scheifler and Jim > > Gettys. > > Whilst that is a reasonable assumption, I=E2=80=99m not sure it is true i= n this > case. Bob Scheifler writes in 1986: > > "We acquired a UNIX-based version of W for the VSlOO (with synchronous > communication over TCP [24] produced by Asente and Chris Kent at Digital= =E2=80=99s > Western Research Laboratory.=E2=80=9D > > It does not say =E2=80=9CC based=E2=80=9D, but it is quite possible that = the Unix port > also meant moving to C. > > Also, the work started in June 1984 and had gone to version 10, release 3 > by February 1986. That is 12 versions in 20 months. Most likely X1-X10R2 > are all snapshots done in rapid succession. X11 is the 11th version of the wire protocol. They bumped that number each time there was a protocol change. It's not clear that all the early versions were distributed beyond the local network. The Xlib book stated something along these lines, but I can't find my copy to quote it or refresh my recollection. The change notes for X10R3 read as describing a work still in progress: > > http://www.retro11.de/ouxr/43bsd/usr/src/new/X/CHANGES > > That =E2=80=9Cwork-in-progress=E2=80=9D feel also shows in the Xterm READ= ME: > > "Xterm is in a reasonably usable state. We are sick and tired of working > on it, but there are clearly major areas of improvement possible. Do > not look to us to do more than integration work on other people's > improvement. About 50% of it is the oldest existing code in the package > and needing major rewrite. Our thanks to Bob McNamara for the 50% which > is solid." > Rolling releases were quite common. They went out of style for a while, but are back in vouge with CI.... The README for the X server itself (written in August 1985 it seems, > http://www.retro11.de/ouxr/43bsd/usr/src/new/X/X/README) says: > > "The server has been completely rewritten several times now, and I am > reasonably > happy with it. I have fine-tuned it specifically for the current > (sub-optimal) > VAX compiler. For other machines, faster code may be obtained in some > cases > by changing sizes (e.g., to avoid indexing shifts on the 68000) or regist= er > declarations. Attempts to parameterize along these lines have only been > made > for the byte-swapping code.=E2=80=9D > > So there were several rewrites from Summer 1984 till Summer 1985. In case > the first version was in CLU, it would seem that the change-over to C > happened in the very first months of the code base=E2=80=99s lifespan. > Most likely the CLU library bindings in X10R3 are a hold over from other software other departments were still using given the fast pace here... The next paragraph as to the state of the code base at this time is > revealing: > > Unfortunately, a great many invariants are not written down. Hopefully y= ou > will spend a few weeks understanding the code before you muck with it. I= f > something seems easy to add or change, you probably forgot something > important. > Almost everything depends on everything else. It is almost impossible to > devise rigorous test cases. Innocuous looking changes can have large > performance effects, so watch out. If you muck with fundamental window > components, a good cross-check is to see how quickly you can manipulate a > window with, say, 100 non-adjacent subwindows. > > After reading the above, Jon Steinhart=E2=80=99s post from 5 years ago ab= out X is > all the more interesting: > https://minnie.tuhs.org/pipermail/tuhs/2017-September/012089.html I'd forgotten about that... Warner > > --0000000000003f10fb05f354c899 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


On Sat, Jan 28, 2023, 4:05 AM Paul Ruizendaal <pnr@planet.nl> wrote:

> On 28 Jan 2023, at 10:14, Lars Brinkhoff <lars@nocrew.org> wrot= e:
>
> Warner Losh wrote:
>> Rich Salz wrote:
>>> I'd like to know what the first versions of X were written= in
>>
>> Without the earlier versions' source, it's hard to answer = this question...
>
> V source code exists, right?=C2=A0 It seems likely W would have been w= ritten
> in the same language as W.=C2=A0 And that early X would also be the sa= me.
> Another source of information would be to ask Bob Scheifler and Jim > Gettys.

Whilst that is a reasonable assumption, I=E2=80=99m not sure it is true in = this case. Bob Scheifler writes in 1986:

"We acquired a UNIX-based version of W for the VSlOO (with synchronous= communication over TCP [24] produced by Asente and Chris Kent at Digital= =E2=80=99s Western Research Laboratory.=E2=80=9D

It does not say =E2=80=9CC based=E2=80=9D, but it is quite possible that th= e Unix port also meant moving to C.

Also, the work started in June 1984 and had gone to version 10, release 3 b= y February 1986. That is 12 versions in 20 months. Most likely X1-X10R2 are= all snapshots done in rapid succession.

X11 is the 11th version of the wire p= rotocol. They bumped that number each time there was a protocol change. It&= #39;s not clear that all the early versions were distributed beyond the loc= al network. The Xlib book stated something along these lines, but I can'= ;t find my copy to quote it or refresh my recollection.


The change notes for X10R3 read= as describing a work still in progress:

http://www.retro11.de/ouxr/43bsd/us= r/src/new/X/CHANGES

That =E2=80=9Cwork-in-progress=E2=80=9D feel also shows in the Xterm README= :

"Xterm is in a reasonably usable state.=C2=A0 We are sick and tired of= working
on it, but there are clearly major areas of improvement possible.=C2=A0 Do<= br> not look to us to do more than integration work on other people's
improvement.=C2=A0 About 50% of it is the oldest existing code in the packa= ge
and needing major rewrite.=C2=A0 Our thanks to Bob McNamara for the 50% whi= ch
is solid."

Rolling releases were quite common. They went out of style f= or a while, but are back in vouge with CI....

The README for the X server itself (written in August 1985 it seems, http://www.retro11.de/ouxr/43bsd/usr/src= /new/X/X/README) says:

"The server has been completely rewritten several times now, and I am = reasonably
happy with it.=C2=A0 I have fine-tuned it specifically for the current (sub= -optimal)
VAX compiler.=C2=A0 For other machines, faster code may be obtained in some= cases
by changing sizes (e.g., to avoid indexing shifts on the 68000) or register=
declarations.=C2=A0 Attempts to parameterize along these lines have only be= en made
for the byte-swapping code.=E2=80=9D

So there were several rewrites from Summer 1984 till Summer 1985. In case t= he first version was in CLU, it would seem that the change-over to C happen= ed in the very first months of the code base=E2=80=99s lifespan.

Most likely= the CLU library bindings in X10R3 are a hold over from other software othe= r departments were still using given the fast pace here...

The next paragraph as to the state of the code base at this time is reveali= ng:

Unfortunately, a great many invariants are not written down.=C2=A0 Hopefull= y you
will spend a few weeks understanding the code before you muck with it.=C2= =A0 If
something seems easy to add or change, you probably forgot something import= ant.
Almost everything depends on everything else.=C2=A0 It is almost impossible= to
devise rigorous test cases.=C2=A0 Innocuous looking changes can have large<= br> performance effects, so watch out.=C2=A0 If you muck with fundamental windo= w
components, a good cross-check is to see how quickly you can manipulate a window with, say, 100 non-adjacent subwindows.

After reading the above, Jon Steinhart=E2=80=99s post from 5 years ago abou= t X is all the more interesting: https://minnie.tuhs.org/pipermail/tuhs/2017-September/012089.html<= /a>


--0000000000003f10fb05f354c899--