<Come gush about the Connection Machine with me. >...
# present-company
i
Come gush about the Connection Machine with me. Share your anecdotes. Tell me what *Lisp was actually like. Marvel at a time when computers still looked futuristic.
❤️ 7
🛸 1
d
I have a "wasted talent" feel about this thread, Ivan - it's brilliant, not just because I'm an old fart that this content resonates with, but because you've got a brilliant style aligned with technical /and/ stylistic understanding. I think you need to do more like this somehow.
e
whispers blog post blog post blog post
i
we have blog post at home blog post at home: https://mastodon.social/@spiralganglion/112578884737169457
(It's easy for me to nope out of this one because I have already spent 5 hours today editing less than half a podcast.)
❤️ 1
e
the social is predicated on its exclusions
d
I was once a professional Lisp programmer, since you ask, at the time when OO was taking off and Lisp had to keep up with the times (CLOS).
🍰 1
That was around the time of the Transputer, Occam and the Japanese 5th Generation initiative with Prolog. Wow, exciting times. Sadly C++ came along and... well
🍰 2
("around the time" means decades to us oldies: 84 to 94 I think)
i
Basically exactly the lifespan of Thinking Machines
g
Marvel at a time when computers still looked futuristic.
I take the stance that using a function-based paradigm is only one possible way to program. From this vantage point, programming of Reprogrammable Electronic Machines (mis-named "compute-ers") in 2024 presents a cornucopia of futuristic possibilities, much like in the 1950s when (the royal) "we" had to figure out how to deal with the problem space of programming CPUs. We need, yet, to satisfactorily solve the transition from CPUs (Central Processing Units) to DPUs (Distributed Processing Units) and to address the problem space of true asynchronicity for problems like robotics, internet, gaming, etc, etc. I acquired a one-chip Arduino that was on sale for $5 and could have built myself a better-than-connection-machine with 1,000s of such devices, yet, I, also, knew that the current crop of programming languages couldn't be used to handle such a task. To me, it currently feels just like it did in the early 1970s when I rolled my own Lisp, wire-wrapped my own CPU, hollowed out a Radio Shack calculator to scrounge it's meagre display and keypad, and, finger-poked into an IBM Selectric typewriter to write an article for DDJ. I vote that the next time you suffer from insomnia, please, also, bless us with a thread about Chuck Moore's Green Arrays, or Dave Ackley's stuff, or Sassenrath's Rebol, or Pong, or the Yamaha WX7, or the Apple Newton, or ...
i
Oooh. I'll bite! What's neat about Pong, the WX7, or the Newton? I've got a good sense of what makes Moore's stuff cool, I'm all over Ackley, I'm passingly familiar with Rebol… but I don't know much of anything about the programming behind those last three, or even that there's something deep and cool there.
g
Pong, 1972, used a notation called "schematics", wherein every component was fully async. The whole game was expressed on one piece of paper and could be understood and afforded and built by a poor student. I haven't seen any programming language today that competes with that kind of succincticity. My gut says that the Pong schematic is succinct because of fundamental asynchronicity, unlike modern programming languages which are all the same - synchronous at the core. (Aside: Q: why am I interested in 0D, and, true message-passing???). My gut says that we've gone sideways, but, not forward. The WX7 (wind controller - looked like a clarinet) was just outside-of-the-box strange use of hardware. You could control a synth by blowing into the WX7. Probably programmed in assembler. Even my Apple Watch 9 doesn't do anything when I blow on it (I think 🙂). The Newton did stylus-based hand-writing recognition - only in B&W - decades ago, before Jobs pulled the plug (and put the downtown Newton Store out of business). The Palm Pilot was still a going concern at the time. This was decades before the emergence of so-called "smart" phones.
👍 1
i
Well, now I gotta go learn more about pong. Thanks for the tip!
FYI - IIRC, I first saw a WX7 when Bill Buxton played it on stage during the OOPSLA Ottawa (1990?) keynote. [Are you aware of Buxton? If not, you might wish to become aware]. Later at the reception, we discussed theremins and he mentioned the idea of hooking a theremin into a Pitchrider [my '59 Strat still has stains on the pickguard where I'd attached a Pitchrider pickup (I was able to play blues harp with my guitar (a good use for what is now called auto-tune))].
b
Yay for *Lisp, but don't snooze on *Logo, a massively parallel dialect of Logo on the Connection Machine architecture that Mitch Resnick and his group at the MediaLab used with Boston-area grade- and middle-schoolers (see his book "Turtles, Termites and Traffic Jams")
d
Pong is just a page of logic circuitry? Woah. That's stunning. Having said that, if asked how Pong was implemented I'm not sure what my answer would be - I'd probably say 4004 code. It would take me a while to go through that schematic and figure it all out, but I built quite a few logic circuits myself long long ago, so it's in my blood. Not sure I have a day spare to do it, though. Anyway, thanks for the mind expansion!
Oh - wire-wrapping - now we're really into old gits chatting down the pub - I built a couple of very (for the time) complex computer circuits without soldering, just wrapping wires around pins! Blue wire - was it kevlar? Still have some left that I've kept for decades.
I'd like to put a bit +1 on your specific requests to Ivan to continue this series. Brings joy and a tear. Joy and a tear I tell ya!
But, as I said, it's more than just the heart-warming subject matter - Ivan, you have a unique style and skill.
i
Very kind of you Duncan. If there's another time I find myself overflowing with enthusiasm about a particular bit of history, I'll do another thread like this.
I enjoy the reminiscences you're all sharing. I've never wire wrapped anything myself, but I've certainly seen photos of those sorts of electronics, from the time before surface mount and pcbs.
g
Pong is just a page of logic circuitry? Woah. That’s stunning.
C size page.
Having said that, if asked how Pong was implemented I’m not sure what my answer would be - I’d probably say 4004 code.
Nope. No CPU whatsoever. Just random logic. Digital ICs and some transistors (probably in non-linear, “digital mode”).
It would take me a while to go through that schematic and figure it all out,
Yep, schematics ain’t perfect. In fact, the Pong circuit looks confusingly detailed. OTOH, if I took at 4-year undergrad course in EE vs. a 4-year undergrad course in “coding”, I could express Pong on one piece of paper in schematic notation whereas code would take more than one piece of paper. Looking at both, what do I see? Schematics - too flat. Code - too flat. Too much detail in both notations. Schematics - async. Code - sync. How can a notation elide noisy details? Layering. Internet - async. Robotics - async. Calculators - sync. Gaming - async, ideally. Military missile ballistics - sync. Rocket science flight trajectories - sync. DAWs - async. iMovie - async. Blockchain - async, distributed, decentralized. Human free will == async, decentralized. CEO node-and-arrow whiteboard diagrams - decoupled units connected by message-passing.
I bought 24K of DRAM, but, after wire-wrapping got only 22K of it to work. My wire-wrapping was too neat - the long, beautiful bundles of wires were cross-talking with each other. I had to snip a bunch of wires and add entropy to the system (making the wiring “messier”). Only then, I got all the way up to 22K of reliable RAM. That was enough to build my first compiler in (Lisp - Anatomy of Lisp, after fixing a bunch of typos and bugs in the book (essentially my first salt-lick of Denotational Semantics kinda thinking)).
... Ivan, you have a unique style and skill. ...
I’ll second that emotion. I learned new stuff about connection machines looking through your lens. I would be interested in having you point your lens at different bits of outré technologies. Step 1 in “first principles thinking” is to observe... [https://guitarvydas.github.io/2022/05/25/Programming-First-Principles-Thinking.html]
i
Not to deflect, but there's something decidedly cool about what Thinking Machines did, and it's a sort of cool that I appreciate, so it was easy for me to just point at it and say "this stuff was cool!" Specifically, it's a machine that looks like science fiction, but it was real, and all I had to do was say "look at this thing — it was real!" and that was a great framing for a thread. There aren't too many other computers I can do that with. Maybe Project Cybersyn? The WX7 also has that look, but it's not a computer in the same sense. I felt a similar sort of joy about Pygmalion (spoilers for the imminent FoC podcast episode where we talk about it), but I'm not sure that I could do a good thread on Mastodon about it. (But hey, there's going to be a podcast episode, so at least people with a tolerance for 3 hours of audio chaos will have that version of my "lens", hah). But yeah, I enjoyed making that thread, mostly because I enjoyed watching Danny's talk and exploring Tamiko's website, and if something like that crosses my path again I'll totally do it again.
j
In the ancient before times, I did a bunch of computer vision stuff on one of their machines using *Lisp. If you had the right shaped problem they were magical for the time…
❤️ 1