The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
* [TUHS] Listing of early Unix source code from the Computer History Museum.
@ 2025-05-25  4:24 Jackson Helie G
  2025-05-25  5:10 ` [TUHS] " Henry Bent
  2025-05-25 20:30 ` Phil Budne
  0 siblings, 2 replies; 3+ messages in thread
From: Jackson Helie G @ 2025-05-25  4:24 UTC (permalink / raw)
  To: tuhs

[-- Attachment #1: Type: text/plain, Size: 117 bytes --]

What program's source code is on pages 145 - 169 (assembly listings are t1
- t8) in the CHM release of UNIX BOOK II?

[-- Attachment #2: Type: text/html, Size: 143 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [TUHS] Re: Listing of early Unix source code from the Computer History Museum.
  2025-05-25  4:24 [TUHS] Listing of early Unix source code from the Computer History Museum Jackson Helie G
@ 2025-05-25  5:10 ` Henry Bent
  2025-05-25 20:30 ` Phil Budne
  1 sibling, 0 replies; 3+ messages in thread
From: Henry Bent @ 2025-05-25  5:10 UTC (permalink / raw)
  To: Jackson Helie G; +Cc: tuhs

[-- Attachment #1: Type: text/plain, Size: 1913 bytes --]

On Sun, 25 May 2025 at 01:01, Jackson Helie G <yuyi15968@gmail.com> wrote:

> What program's source code is on pages 145 - 169 (assembly listings are t1
> - t8) in the CHM release of UNIX BOOK II?
>

*The source code found on pages 145 through 169 of the Computer History
Museum's (CHM) "Unix Book II" release contains the assembly listings for
the original Unix shell, also known as the Thompson shell.* This early
command-line interpreter was a fundamental component of the nascent Unix
operating system.

These specific pages detail the inner workings of the shell, written in
PDP-7 assembly language. The assembly listings, labeled t1 through t8,
correspond to different routines and components of the shell program. This
provides a fascinating glimpse into the foundational code that established
the interactive user experience for which Unix and its successors, like
Linux, would become famous.
*A Look Inside the Code*

The code on these pages, authored by Ken Thompson, showcases the essential
features of the first Unix shell, including:

   - *Command execution:* The logic for reading user input, parsing
   commands and their arguments, and executing programs.
   - *I/O redirection:* The implementation of input and output redirection
   using the familiar < and > symbols, a groundbreaking feature at the time.
   - *Shell scripts:* The rudimentary beginnings of shell scripting,
   allowing users to chain commands together in a file for automated execution.

The "Unix Book II" is part of the Dennis M. Ritchie papers collection at
the CHM and represents some of the earliest existing Unix source code. The
release of this document has been a significant event for computer
historians and enthusiasts, offering a direct look at the origins of one of
the most influential operating systems ever created.

---

That took me about 30 seconds with Google.  Are we doing your homework for
you?

-Henry

[-- Attachment #2: Type: text/html, Size: 2419 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [TUHS] Re: Listing of early Unix source code from the Computer History Museum.
  2025-05-25  4:24 [TUHS] Listing of early Unix source code from the Computer History Museum Jackson Helie G
  2025-05-25  5:10 ` [TUHS] " Henry Bent
@ 2025-05-25 20:30 ` Phil Budne
  1 sibling, 0 replies; 3+ messages in thread
From: Phil Budne @ 2025-05-25 20:30 UTC (permalink / raw)
  To: yuyi15968, tuhs

Jackson Helie G wrote:
> What program's source code is on pages 145 - 169 (assembly listings are t1
> - t8) in the CHM release of UNIX BOOK II?

From a quick look, this is the TMG compiler compiler runtime.  The
compiler for the TMG language (TMGL) itself (almost certainly written
in TMGL) did not survive, nor did it's compiled output.

From the runtime, I recreated a TMGL compiler, and also a simple B
compiler, *BUT* I don't think either works within the exact (symbol
table?) space limits in the (previously entered) PDF files. I was a
TMG novice, and used labeled expressions freely; I don't doubt Doug
McIlroy's original version was FAR more clever (he had previously
worked on a TMG based PL/I compiler for Multics).

This is the first I've heard of PDFs coming to light in dmr's papers,
so I can't say if they're of the same documents.

My work is in a branch of my fork of the pdp7-unix repo:
https://github.com/philbudne/pdp7-unix/tree/tmg

Almost 2200 lines of notes on my Odyssey:
https://github.com/philbudne/pdp7-unix/blob/tmg/misc/tmg-notes.txt

Files I added:
https://github.com/philbudne/pdp7-unix/tree/tmg/src/other/pbtmg

  TMGL compiler (compiles under itself and PDP-11 tmgl):
  https://github.com/philbudne/pdp7-unix/blob/tmg/src/other/pbtmg/t0.t
  
  B compiler in TMGL:
  https://github.com/philbudne/pdp7-unix/blob/tmg/src/other/pbtmg/b.t

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2025-05-25 20:30 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-05-25  4:24 [TUHS] Listing of early Unix source code from the Computer History Museum Jackson Helie G
2025-05-25  5:10 ` [TUHS] " Henry Bent
2025-05-25 20:30 ` Phil Budne

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).