From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,HTML_MESSAGE,MAILING_LIST_MULTI, RCVD_IN_DNSWL_NONE autolearn=ham autolearn_force=no version=3.4.2 Received: from minnie.tuhs.org (minnie.tuhs.org [45.79.103.53]) by inbox.vuxu.org (OpenSMTPD) with ESMTP id 4c2fc0e8 for ; Sat, 19 Oct 2019 18:45:25 +0000 (UTC) Received: by minnie.tuhs.org (Postfix, from userid 112) id D24A893D86; Sun, 20 Oct 2019 04:45:23 +1000 (AEST) Received: from minnie.tuhs.org (localhost [127.0.0.1]) by minnie.tuhs.org (Postfix) with ESMTP id 1997293D2D; Sun, 20 Oct 2019 04:45:04 +1000 (AEST) Authentication-Results: minnie.tuhs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="IW11HZiE"; dkim-atps=neutral Received: by minnie.tuhs.org (Postfix, from userid 112) id 829CB93D2D; Sun, 20 Oct 2019 04:44:52 +1000 (AEST) Received: from mail-ed1-f51.google.com (mail-ed1-f51.google.com [209.85.208.51]) by minnie.tuhs.org (Postfix) with ESMTPS id 9B2C093D1B for ; Sun, 20 Oct 2019 04:44:51 +1000 (AEST) Received: by mail-ed1-f51.google.com with SMTP id q24so1036849edr.10 for ; Sat, 19 Oct 2019 11:44:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=AWNdd0aXJsRXWjr1fZ/U/4x7EL2QUgKCQXbG6SE/Qfo=; b=IW11HZiEhx0WEPQapVUuh9ToYCQkggg0Nb+nD16HaFCJ8EntT+FqMOScHvDBYsvPbd 47gHMejWF20f8kSRjEX70LNh3T10Lla90bi8SA2nCju9kwhn6Wo1qu8wMXenfsSIDoeh SUzpq2JoJxEsXHRVu2FknFm8S98jhisao4QPZ4fuijrHAENB/qZ4rPR0C5cLvgey3S2H Fag1LVpp8RuvNVRotwJh2hMqXnlnjFf13JcXRWJXaFTl5whjW9jw+V4G256dbp44ttdW LdVg5VULVBaFGP9r5U2NjCjFfwOXOmITTcI14LNKAAOcRnrBNcdR/0csoSi7nrS8kRMA uwJg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=AWNdd0aXJsRXWjr1fZ/U/4x7EL2QUgKCQXbG6SE/Qfo=; b=gULp/jZxRIjgPBbetWyY3AGKTbjvZckEOHWUET0dmqqQKR3o+18jC3s4nnbCh4uUPd 9c8esfF6wXgW3r/A4VV5EGYdJWpTsKgW2NDuJRRsYtN30I+ROMmTrJWgz+Ue+bUV2Xy/ Ywo9/ZO35PJTL+1dn8gmGZfORuL+ESdcLPsBxOmnrHm07CSjA3z39zSaQo9AHuL2B26y +Sn1JlrN73fjymdMgrao4xdZZ3V7scU2BuQW7F6m0vDJhZ49i7+XzcfNYsYGUEbYjtRy iHV6bR6c1Ypyfaz3ZPIufBvnVl4rjEK6DESPlyOUfs9+d46HxOGVfuaxl8t7LwqEuCOE s76w== X-Gm-Message-State: APjAAAUpvyIVAKPfg2eYkcvBjiMvTIweuubSLDQ9EcaxIGLc11l6iQBe fqXjI4etxPOhIXCFqTpBS0XJd89MIKv2Lyqo5Wkxkdmviro= X-Google-Smtp-Source: APXvYqyYq7WpsEyE1ZjEf5jLmSKGUCIi+JmW+ne5Lw/0aio7WrkqYFtaO5jlBK3TiBCkY4E8NezT+ocULpY5mtUWxvI= X-Received: by 2002:a17:906:b318:: with SMTP id n24mr14307319ejz.248.1571510690071; Sat, 19 Oct 2019 11:44:50 -0700 (PDT) MIME-Version: 1.0 References: <201910191440.x9JEe8PB035921@tahoe.cs.Dartmouth.EDU> In-Reply-To: From: Abhinav Rajagopalan Date: Sun, 20 Oct 2019 00:14:13 +0530 Message-ID: To: Doug McIlroy Content-Type: multipart/alternative; boundary="0000000000007148db059547d833" Subject: Re: [TUHS] Space Travel, was New: The Earliest UNIX Code X-BeenThere: tuhs@minnie.tuhs.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: The Unix Heritage Society mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: tuhs@tuhs.org Errors-To: tuhs-bounces@minnie.tuhs.org Sender: "TUHS" --0000000000007148db059547d833 Content-Type: text/plain; charset="UTF-8" After some poking around, a Program library (PDP-7) and a Floating point reference manual for a PDP-8 turned up and is now slowly dawning on me that libraries could exist back then too, and that complex polynomials could also be written into routines albeit a bit tedious. http://www.bitsavers.org/pdf/dec/pdp7/DIGITAL-7-30-A_FltPtPkg.pdf http://bitsavers.trailing-edge.com/pdf/dec/pdp8/software/DEC-08-YQYB-D_PDP-8_Floating-Point_System_Programmers_Reference_Manual_Sep69.pdf On Sun, Oct 20, 2019 at 12:02 AM Abhinav Rajagopalan < abhinavrajagopalan@gmail.com> wrote: > Forgive me for both hijacking this thread, and to address my amateurish > gnawing concern, but how was it be possible to write differential/integral > equations at an assembly/machine level at the time, especially in machines > such as the PDP-7 and such which had IIRC just 16 instructions and operated > on the basis of mere words, especially the floating point math being done. > Surmising from some personal experience that writing mathematical programs > is hard even now, although there exist certain functional paradigms, and > specialised environments such as MATLAB or Mathematica. The > complexity seems to remain the same if not more now, due to the vast oodles > of data to handle stemming from the nature of the world. > > Were they loaded as just words as any other instruction or were there > separate coprocessors that did the number crunching? I'm guessing > Fortran-ish kind of implementations were done, but the hardware level > computation itself I just can't process. > > It just blows my mind now thinking backwards in terms of those > monster machines being loaded with trails of paper tape instructions to > play Space Travel. Being born in the late 90's doesn't help me too. > > Also, on a related note, don't know if you've watched the interview > of Ken done by Brian at the Vintage > Comptuer Federation 2019, there might be a few surprises lurking around the > middle of that when they discuss pipes and grep. > > Thank you! > > On Sat, Oct 19, 2019 at 8:11 PM Doug McIlroy > wrote: > >> I was about to add a footnote to history about >> how the broad interests and collegiality of >> Bell Labs staff made Space Travel work, when >> I saw that Ken beat me to telling how he got >> help from another Turing Award winner. >> >> > while writing "space travel," >> > i could not get the space ship integration >> > around a planet to keep from either gaining or >> > losing energy due to floating point errors. >> > i asked dick hamming if he could help. after >> > a couple hours, he came back with a formula. >> > i tried it and it worked perfectly. it was some >> > weird simple double integration that self >> > corrected for fp round off. as near as i can >> > ascertain, the formula was never published >> > and no one i have asked (including me) has >> > been able to recreate it. >> >> If I remember correctly, the cause of Ken's >> difficulty was not roundoff error. It >> was discretization error in the integration >> formula--probably f(t+dt)=f(t)+f'(t)dt. >> Dick saw that the formula did not conserve >> energy and found an alternative that did. >> > > > -- > > Abhinav Rajagopalan > > > -- Abhinav Rajagopalan --0000000000007148db059547d833 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
After some poking around, a Program library (PDP-7) and = a Floating point reference manual for a PDP-8 turned up and is now slowly d= awning on me that libraries could exist back then too, and that complex pol= ynomials could also be written into routines albeit a bit tedious.=C2=A0

=

=

On Sun, Oct 20, 2019 at 12:02 AM Abhinav Rajagopalan <abhinavrajagopalan@gmail.com> wr= ote:
For= give me for both hijacking this thread, and to address my amateurish gnawin= g concern, but how was it be possible to write differential/integral equati= ons at an assembly/machine level at the time, especially in machines such a= s the PDP-7 and such which had IIRC just 16 instructions and operated on th= e basis of mere words, especially the floating=C2=A0point=C2=A0math being d= one. Surmising from some personal experience that writing mathematical prog= rams is hard even now, although there exist certain functional paradigms, a= nd specialised environments such as MATLAB or Mathematica. The complexity= =C2=A0seems to remain the same if not more now, due to the vast oodles of d= ata to handle stemming from the=C2=A0nature of the world.

Were they loaded as just words as any = other instruction or were there separate=C2=A0coprocessors that did the num= ber=C2=A0crunching? I'm guessing Fortran-ish kind of implementations we= re done, but the hardware level computation itself I just can't process= .

It just blows my mind= now thinking backwards in terms of those monster=C2=A0machines being loade= d with trails of paper tape instructions to play Space Travel. Being born i= n the late 90's doesn't help me too.

Also, on a related note, don't know if you've= watched the=C2=A0interview=C2=A0of Ken done by Brian at the Vintage Comptuer Federatio= n 2019, there might be a few surprises lurking around the middle of that wh= en they discuss pipes and grep.=C2=A0

Thank you!

On Sat, Oct 19, 2019 at 8:11 PM = Doug McIlroy <doug@cs.dartmouth.edu> wrote:
I was about= to add a footnote to history about
how the broad interests and collegiality of
Bell Labs staff made Space Travel work, when
I saw that Ken beat me to telling how he got
help from another Turing Award winner.

> while writing "space travel,"
> i could not get the space ship integration
> around a planet to keep from either gaining or
> losing energy due to floating point errors.
> i asked dick hamming if he could help. after
> a couple hours, he came back with a formula.
> i tried it and it worked perfectly. it was some
> weird simple double integration that self
> corrected for fp round off. as near as i can
> ascertain, the formula was never published
> and no one i have asked (including me) has
> been able to recreate it.

If I remember correctly, the cause of Ken's
difficulty was not roundoff error. It
was discretization error in the integration
formula--probably f(t+dt)=3Df(t)+f'(t)dt.
Dick saw that the formula did not conserve
energy and found an alternative that did.


--
=

Abhinav Rajag= opalan



--
=

Abhinav Rajagopalan


=
--0000000000007148db059547d833--