Mention of punched cards reminded me of some 1960s trivia.
There were two formats for binary code on punched cards for IBM 700-series
machines. In "row binary" two 36-bit words filled each of the 12 rows from
bottom to top. In "column binary" successive thirds of a word ran downward
in each of 3 successive columns. Bob Morris wondered what is the order of
the permutation performed in row-to-column conversion.
The order of the row-to-column permutation turns out to be 172. There are
five cycles of that length plus an oddball of length 4. My souvenir card
shows the oddball.
If you convert a cycle from row binary to column binary, the output is the
same as the input.* Each cycle is also invariant under 180-degree
rotation.The 4-cycle is a simple parallelogram. One of the 5-cycles lines
up in periodic diagonals. The other cycles show no easily described
structure.
The images of the two described cycles should be viewed in a fixed-width
font. The punches in the 4-cycle are numbered in cyclic order.
I keep a few souvenir punched cards. One bears that 4-cycle.
* Well, almost the same. The first word on the card contains control
information whose layout differs in the two formats.
Doug
........................................................................
........................................................................
...........................................3............................
........................................................................
..............2.........................................................
........................................................................
........................................................................
.........................................................4..............
........................................................................
............................1...........................................
........................................................................
........................................................................
..X....X....X....X....X....X....X....X....X....X....X....X....X....X....
....X....X....X....X....X....X....X....X....X....X....X....X....X....X..
.X....X....X....X....X....X....X....X....X....X....X....X....X....X....X
...X....X....X....X....X....X....X....X....X....X....X....X....X....X...
X....X....X....X....X....X....X....X....X....X....X....X....X....X....X.
..X....X....X....X....X....X....X....X....X....X....X....X....X....X....
....X....X....X....X....X....X....X....X....X....X....X....X....X....X..
.X....X....X....X....X....X....X....X....X....X....X....X....X....X....X
...X....X....X....X....X....X....X....X....X....X....X....X....X....X...
X....X....X....X....X....X....X....X....X....X....X....X....X....X....X.
..X....X....X....X....X....X....X....X....X....X....X....X....X....X....
....X....X....X....X....X....X....X....X....X....X....X....X....X....X..
https://boingboing.net/2025/03/10/make-your-own-virtual-punchcard.html
[50 years ago today I started working at IBM Yorktown. My boxes of
punchcards from graduate work at UT-Austin were enroute with the movers
from Austin, to be fed into VM-370 after they arrived. I wish I had kept
those boxes as souvenirs.]
Charlie
--
voice: +1.512.784.7526 e-mail: sauer(a)technologists.com
fax: +1.512.346.5240 Web: https://technologists.com/sauer/
Facebook/Google/LinkedIn/mas.to: CharlesHSauer
Besides the first day I sat at the PDP-7 console, one of the biggest Unix
thrills came when when I logged in remotely to the new Cray at Bell Labs.
Here was a monster machine with a manual I had never seen, and I was able
to compile and run a program on it at the first try. God bless sh, ed, cc,
and a.out.
Doug
File under "What a Drag it is Getting Old"....
My kids have now reached the age where they have started to mock me.
Not only must I contend with the fact that I'm not cool anymore (if,
indeed, I ever really was) but I also realize that I have no idea what
the slang they're using means. None whatsoever; it's all
unintelligible gibberish to me. They clearly revel in my ignorance.
But I have found a way to get even: I have started spelling out
commands verbally, punctuated with random words, and acting like this
has more general meaning (and like, you're just not hip with the rizz
if you don't understand). For example, "Yo, tar x v; on cat. Sig
Pipe, amirite?" I'll throw one of these out, and they stare at me
with faux comprehension while I silently, inwardly gloat.
Just thought I'd share.
- Dan C.
Hi all, this is a pretty weird question to ask.
I've been extending the RISC-V version of xv6 to have a decent libc and
some userland programs: https://github.com/DoctorWkt/xv6-riscv-fuzix
There's a minimalist shell and my own 'wish' shell; neither have any
scripting capability. Also, as it stands there are no signals implemented.
I'd love a Bourne-ish shell to write shell scripts, but I've had a hard
time finding one that I can snip out the signal handling code.
If you have any suggestions, please met me know!
Thanks, Warren
Not dissimilar work at AT&T Research ~2000 - compressing fixed-length records, better than gzip, +30% for similar compute time.
‘pzip’ - Adam Bushman & Glen Fowler
<https://web.archive.org/web/20041019142227/http://www.research.att.com/~gsf…>
Later work by others, building on ‘pzip’ ,claims ‘100x’.
> On 30 Dec 2024, at 00:44, Douglas McIlroy <douglas.mcilroy(a)dartmouth.edu> wrote:
>
> I can supply a copy if no one else has beaten me to it.
>
> Ron Hardin subsequently pushed the limit even further. Unfortunately,
> I do not have a record of that work.
>
> Doug
>
> On Sat, Dec 28, 2024 at 9:54 PM Royce Williams <royce(a)techsolvency.com> wrote:
>>
>> Someone I know is seeking the original version of an internal Bell Labs memo from 1974 titled "Webster's Second on the Head of a Pin" by Morris and Thompson. The topic appears to be related to improving the speed of lookups or search. It's cited in a few papers as "Unpublished Technical Memo, Bell Laboratories, Murray Hill, NJ 1974." All I can find online is citations. Any leads appreciated!
>>
>> --
>> Royce
Other links:
This repository included ksh-93 sources
Glen Fowlers’ downloads
<https://web.archive.org/web/20130514131958/http://www2.research.att.com/~gs…>
Later AT&T Research page with Software downloads
<https://web.archive.org/web/20090626002505/http://public.research.att.com/i…>
THE AT&T AST OPENSOURCE SOFTWARE COLLECTION
2000
<https://www.usenix.org/legacy/publications/library/proceedings/usenix2000/f…>
Github Repo for AST - I couldn’t make these compile
<https://github.com/att/ast/tree/master>
KSH93
<https://github.com/ksh93>
--
Steve Jenkin, IT Systems and Design
0412 786 915 (+61 412 786 915)
PO Box 38, Kippax ACT 2615, AUSTRALIA
mailto:sjenkin@canb.auug.org.au http://members.tip.net.au/~sjenkin
The PDP-10 had an alarm bell that could be rung under program control.
When the TOPS-10 operating system crashed, it displayed a numeric code on
the console indicating the reason for the crash. This was called a
"stopcode" and is the equivalent of a Unix panic. It also rang the alarm
bell.
DDT (Dynamic Debugging Tool) was the primary debugger for TOPS-10. PPN
(Project-Programmer Number) was used for system security. Each user
account was assigned by number to a Project, and within that Project a
unique Programmer Number. The low numbers (such as [7,3]) were usually
privileged accounts.
So here we have the Christmas carol Stopcode Bells, to the tune of Jingle
Bells:
==========
Stopcode bells, stopcode bells, stopcode all the way.
Oh what fun it is to crash the system night and day.
Stopcode bells, stopcode bells, stopcode all the way.
Oh what fun it is to crash the system night and day.
Poking through the core
With a bug in DDT
Change your PPN
To [7,3].
Halt somebody's job.
Make them scream and shout.
Oh what fun it is to log
The operator out.
==========
This is one that I wrote while I worked in DEC's software development tools
department. Around Christmas time the first baselevels of VAX/VMS Version
3.0 were being sent to alpha test. The engineering departments got first
crack at the new system and so were the first to encounter bugs and design
problems. VMS Version 3 had been a very ambitious project and was
eventually split up into Version 3A (released as Version 3.0) and Version
3B (released as Version 4.0). There was a lot of grumbling by groups whose
new features got put into 3B and thus delayed. The early baselevels of 3A
broke the VAX C runtime library.
So here we have Version 3 is Coming to Town:
==========
You'd better work hard
You'd better code fast.
The system you use
Just ain't gonna last.
Version 3 is coming to town.
They fixed some old bugs
And put new ones in,
Added some features
They think will win.
Version 3 is coming to town.
There's so many new features.
Too bad we can't use C.
And the things that we most wanted
Were deferred until 3B.
You'd better work hard
You'd better code fast.
The system you use
Just ain't gonna last.
Version 3 is coming to town.
=========
-Paul W.
Apropos of file types, which Rich Salz commends Unix for discarding.
Early in Multics development, I and others visited various influential
time-sharing systems in search of good ideas. I tried each one on a
simple model of software updating, in particular of remaking a
compiler. In every instance I could not make my program work without
expert help to get past file-type barriers.
My model was based on a trivial Fortran program that copied input to
output until an input line with END in column 7 had been processed.
Every system was able to compile this program, but ...
After compiling, I tried to use the program to make a copy of itself.
Here was the first file-type hurdle. Input was typically expected to
be of type data, not source code. Gurus had to scramble to overcome
this nominal incompatibility.
Next I tried to compile the new Fortran program. Same trouble in
reverse--data used as source. More scrambling of gurus.
Then I ran the newly compiled program to do the above steps over
again. This time the gurus had the file-type workarounds under
control. One comp center still had trouble, however, which took some
time to diagnose. It turned out that Fortran programs were, for
unknown reasons, specifically forbidden to read their own source code!
One side effect of file-type conventions was that instead of learning
once and for all how to create text files, one had to learn different
ways to edit files of different types.
Doug
I was just trying to find out if there was a way of uploading the TUHS
mailing list as a corpus of text into a LLM so that I could ask questions
based on the knowledge contained therein. I'm not having much luck yet.
Anyway, while messing around with things I asked a simple question and got
this answer:
What is a spin lock?
A spin lock, also known as a spinning lock or spinning lock mechanism, is
a type of mechanical locking device used to secure and protect sensitive
electronic components, such as microprocessors, memory chips, and other
high-value devices.
Here's how it worked: when a CPU instruction was executed and the
necessary data was stored in registers, the CPU would "lock" the registers
by spinning them around to prevent other instructions from accessing them.
Those poor registers must get dizzy with all the spinning that they
have to endure :-)
Cheers, Warren
P.S. If anybody has ideas on how to usefully import the TUHS mailing list
into a LLM, let me/us know.