Archive.org now has a page with "the raw analog waveform and the reconstructed digital tape image (analog.tap), read at the Computer History Museum's Shustek Research Archives on 19 December 2025 by Al Kossow using a modified tape reader and analyzed with Len Shustek's readtape tool." A Berlin-based...
I think it’s actually quite elegant. No matter what it has to skip over argument 0 which will be the executable name echo.
If the subtraction was removed and the loop changed to <, it would then need to do an addition or subtraction inside the loop to check if it’s the last argument.
The real question might be whether the compiler was smart enough to change var++ and var-- into ++var and --var when the initial values aren’t needed.
As compiler optimisations go, it’s a fairly obvious one, but it was 1974 and putting checks like that in the compiler would increase its size and slow it down when both space and time were at a premium.
It’s actually really easy when you get to make everything up as you go along. Like the transistor, and C, and Unix. That place was something else. The modern world was born in NJ
They wrote this without googling anything.
They were chatting with ELIZA and vibe coded the whole thing
If you had a question about C, you would just consult K&R, and I don’t mean the book
Hello World in 1974: echo.c
main(argc, argv) int argc; char *argv[]; { int i; argc--; for(i=1; i<=argc; i++) printf("%s%c", argv[i], i==argc? '\n': ' '); }Bloat, they wasted an extra integer operation with
argc--.I think it’s actually quite elegant. No matter what it has to skip over argument 0 which will be the executable name
echo.If the subtraction was removed and the loop changed to
<, it would then need to do an addition or subtraction inside the loop to check if it’s the last argument.The real question might be whether the compiler was smart enough to change
var++andvar--into++varand--varwhen the initial values aren’t needed.As compiler optimisations go, it’s a fairly obvious one, but it was 1974 and putting checks like that in the compiler would increase its size and slow it down when both space and time were at a premium.
Well, good news, the source code is right there. Someone can go check (it probably won’t be me)
I was going to guess the same regarding the time period.
Or they just drop the =
They wrote this without autocompletion or syntax highlighting.
They had PAPER NOTEBOOKS cheats
They also used the classic they knew what they were doing shortcut.
It’s actually really easy when you get to make everything up as you go along. Like the transistor, and C, and Unix. That place was something else. The modern world was born in NJ
* looks at modern world *
Yeah, that tracks.
Yea I thought about having ‘for better for worse’ in the post, but I lived in NJ so I’ll let them have a little glory for once