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.5 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 CAACC26B64 for ; Fri, 10 May 2024 19:28:59 +0200 (CEST) Received: from minnie.tuhs.org (localhost [IPv6:::1]) by minnie.tuhs.org (Postfix) with ESMTP id D77CF434B3; Sat, 11 May 2024 03:28:55 +1000 (AEST) Received: from mail-pj1-x1032.google.com (mail-pj1-x1032.google.com [IPv6:2607:f8b0:4864:20::1032]) by minnie.tuhs.org (Postfix) with ESMTPS id C620D434B0 for ; Sat, 11 May 2024 03:28:51 +1000 (AEST) Received: by mail-pj1-x1032.google.com with SMTP id 98e67ed59e1d1-2b620677a4fso1756081a91.1 for ; Fri, 10 May 2024 10:28:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1715362131; x=1715966931; 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=54/PHHKuL+4mUlDUGoucjKKivdwo3EVj1JiFxz9mL8A=; b=N/lh8qTb2lhrr48FEyB3F+MoDcCx99gY+mbxOiufob7jKsuN5ukzjwNUCHJVfv+Oba WAXIFamC568Fb9s+eHb6ogouqrpQCzKN6WV5ySyjX+3qmfhcTqjMixFG5HdW/PYu+fbM osADwDxXMDrLgFaATvSyX0oBL4EfB8oT8HVtu94gmJVmVv9sZthcvb14MPbYD3Kan2we NhCX5tn15B/MJPIQT555sJaorDMVbbJSaHncufKcDjQ7nzCVk9jZDNAWyMP83TyKPyEQ in7MQTnVyL2TmatGZ+OZ8cr015jnOazDhAqG5FoS8UdqfNM/dQ0GYf/vvp/Yx/WnP1Xv WJgg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1715362131; x=1715966931; 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=54/PHHKuL+4mUlDUGoucjKKivdwo3EVj1JiFxz9mL8A=; b=lMp+Ao44p/HTKyl8bryZnIBVOZ7YdKurSM85fpic4L19n1McHVSGm5M78Xzm/Tf1y9 5vSfK/SZ84xtyan5A4vkpqJTrfjL008l0JiatKgBf5fmCD87TT+BYj26fywRYLdWm/PR gr7Ybb+nkDoAy3t/+uF78QcVYL8gi48My6av0F14yD7afNoMfk02oMPfz/TnUut5pefs 1oPmybj3e2xoGJY2TJ3EllM2+M4pJnJhRCrloVD9W3DQc9HOakZ2HzlUhQ12pgxH2tqj 2EU7kImIZeJq7zmt5EMLWNGr+ZdEC35MNDw2AoHUhRBveh1QZ1I6M4vJ8WevH5dpKoM7 AOEw== X-Gm-Message-State: AOJu0Yyksn4CeWcamq8lhtWLjQOyokbE20hbkj88YplcY6+GImkQ2NJb dzGrb6VvtUm3J9OkqvSyFlzbcTcFSuwRDMPOeDMJhlAdK98V9NlHPx1lqDk2JRKxRGb0X/mG+AW vQTlO334u/bH267bQEgl8ao3+NYc= X-Google-Smtp-Source: AGHT+IGKT5otXIEH1odo8mXdlQc7T3RcJwldFVOCGjvHi9Z4uWKapPtNxpGImidV1ZxywFkx+1cR5THQeBAJ4eDf7zQ= X-Received: by 2002:a17:90b:2384:b0:2b2:9855:2836 with SMTP id 98e67ed59e1d1-2b6ccd8fc74mr4096251a91.34.1715362130872; Fri, 10 May 2024 10:28:50 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Paul Winalski Date: Fri, 10 May 2024 13:28:40 -0400 Message-ID: To: Douglas McIlroy Content-Type: multipart/alternative; boundary="00000000000078d04206181cdeb8" Message-ID-Hash: 3LZRPGKHXXXMXXELZ3OWVQDH52UIYPHH X-Message-ID-Hash: 3LZRPGKHXXXMXXELZ3OWVQDH52UIYPHH 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: TUHS main list X-Mailman-Version: 3.3.6b1 Precedence: list Subject: [TUHS] Re: On the uniqueness of DMR's C compiler List-Id: The Unix Heritage Society mailing list Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: --00000000000078d04206181cdeb8 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, May 8, 2024 at 2:29=E2=80=AFPM Douglas McIlroy < douglas.mcilroy@dartmouth.edu> wrote: > > Dennis was one-up on Digitek in having a self-maintaining compiler. Thus, > when he implemented an optimization, the source would grow, but the > compiler binary might even shrink thanks to self-application. > Another somewhat non-intuitive aspect of optimizing compilers is that simply adding optimizations can cause an increase in compilation speed by reducing the amount of IL in the program being compiled. Less IL due to optimization means less time spent in later phases of the compilation process. Regarding native compilers for small machines, IBM had compilers for Fortran, COBOL, and PL/I that ran in 32K on System/360 and produced tolerably good code (yes, one could do better with handwritten assembler). And they generated real code, no threaded code cop-out. And we're talking full PL/I here, not the subset that ANSI later standardized. The compilers were table-driven as much as possible, heavily overlaid, and used three scratch files on disk (split-cylinder allocated to minimize seek time). -Paul W. --00000000000078d04206181cdeb8 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
On Wed, May 8, 2024 at 2:29=E2=80=AFPM Do= uglas McIlroy <douglas.= mcilroy@dartmouth.edu> wrote:

Dennis was one-up on Digitek in having a self-maintaining compiler. Thus, = when he implemented an optimization, the source would grow, but the compile= r binary might even shrink thanks to self-application.

Another somewhat non-intuitive aspect of optimizing compi= lers is that simply adding optimizations can cause an increase in compilati= on speed by reducing the amount of IL in the program being compiled.=C2=A0 = Less IL due to optimization means less time spent in later phases of the co= mpilation process.

Regarding native compilers for = small machines, IBM had compilers for Fortran, COBOL, and PL/I that ran in = 32K on System/360 and produced tolerably good code (yes, one could do bette= r with handwritten assembler).=C2=A0 And they generated real code, no threa= ded code cop-out.=C2=A0 And we're talking full PL/I here, not the subse= t that ANSI later standardized.=C2=A0 The compilers were table-driven as mu= ch as possible, heavily overlaid, and used three scratch files on disk (spl= it-cylinder allocated to minimize seek time).

= -Paul W.
--00000000000078d04206181cdeb8--