hckrnws
A related item https://news.ycombinator.com/item?id=23295041. The article mentions Patrick Dussud as the Lisp guru who moved to Mcirosoft. He then wrote the .NET runtime garbage collection in Lisp and translated it to C/C++ in the .NET code. Obviously it has been tremendously extended over the decades but you can still see the original quirkiness in the source files (now open sourced).
Thanks! Macroexpanded:
The original .NET garbage collector was written in Common Lisp - https://news.ycombinator.com/item?id=23295041 - May 2020 (66 comments)
1983: "When they found out I could program in Lisp they decided to give me one of the Explorers and I spent almost all of my time working on the new machine."
2023: "When they found out I program in Lisp, they made wise cracks about parentheses and the Lisp Curse. They 'forgot' to invite me to team lunch."
I’ve read all those stories and I don’t think the Lisp Curse is a real thing. The same could be said for prolog or forth. Developers just seemed to gravitate towards C style programming language syntax for a period of time given the popularity of JavaScript and Java and C#
What's the source for the second quote, if any?
Very interesting insight into the Explorer development, thanks for posting the link!
Some (possibly) interesting comments:
- "later I think TI made (or tried to make) a plug-in card version of the TI Explorer for Macs" - this was the MicroExplorer NuBus card for Mac II-series machines, which was somewhat popular. Symbolics also built a NuBus Lisp machine board for Macs.
- "This machine had one of the largest CPUs ever made until that time, something like half a million transistors." The original version of the Explorer (Explorer I) implemented the CPU in TTL logic (plus microcode ROMs and PROMs to implement some logic functions) on two large NuBus boards, the integrated version was later used in the Explorer II and MicroExplorer.
- "the entire computer division was sold off to HP soon after I left" - one of the sad stories, HP destroyed a number of companies after they took over. In addition to TI's computer department (the TI990 16 bit machines were sold to some other company), Apollo, Tandem and DEC (via Compaq) suffered a similar fate.
- "Pretty sure the sale included a sweet little Unix box". This was the TI1500, a 680x0-based asymmetric multiprocessor machine running TI System V (SVR3) with some pretty advanced concepts for its time (such as software RAID/striping), which was also based on NuBus. You could add a TI 68020 CPU board to an Explorer and run Unix on the side. I used to service and admin TI1500 machines as a student and am possibly the last person on Earth with the source code for TI's version of gcc (a horribly hacked version of gcc-1.37 in which the TI-specific code was #ifdef'd into the hp300 backend...). Back in the 90s, I had to request the code from TI in the US (after the division was sold to HP) and received a QIC tape with the gcc/binutils code some weeks later.
The whole NuBus system was based on the NuMachine concept developed at MIT and later Western Digital (https://en.wikipedia.org/wiki/NuMachine). TI bought the rights to NuBus in 1983, Apple and NeXT later adopted the system for their 68k machines. It would be interesting to know why they didn't go with Motorola's own VME bus.
Fun trivia: Swissair used to run their whole booking system on TI Explorers and for some years in the 90s tried to buy every used Explorer system that was available to keep their systems running after the hardware was discontinued (http://lemonodor.com/archives/2002/10/ti_explorer_fam.html).
LMI Lambda, which is essentially Explorer's direct ancestor, used NuBus as well, including the possibility of putting a 68k Unix system as a board into the card cage.
The biggest theoretical setup AFAIK was a 2X2 Lambda + Unix card - essentially two LMI Lambda CPUs, the Unix CPU, plus memory cards.
The I/O subsystem ran from yet another CPU that implemented access to multibus cards and served as front end processor for management purposes.
The NuBus interface itself AFAIK predates 32bit VMEbus, being designed in late 1970s as part of NuMachine project.
Interesting - it seems that TI bought a 25 percent equity in LMI in 1983. This was even mentioned in the New York Times back then...
https://www.nytimes.com/1983/09/02/business/lisp-stake-bough...
Effectively it was TI that put LMI out of business, even more so than Symbolics, by selling their OS and architecture in a lower cost, more deeply discounted configuration.
There was a 4x4 machine, but it was pushing the power supplies to their extreme limits. Not many were sold.
Edit: You got the -PLUS suffix by adding the Unix processor, of which there could be only one, so the largest configuration would be a LAMBDA-4x4-PLUS having four Lisp processors (and consoles) sharing a Unix.
Nice! I only ever came upon reference to 2x2, but it seemed rather obvious that there wasn't a hard limit - I just thought you couldn't fit more into card cage.
There is a hard limit imposed by the backplane - It's four though, not two. Each Lambda processor is four boards and they share a 4-slot private interconnect in the third row of the backplane. Four such interconnects are provided.
Looks like a NuMachine board with serial number "0004" (pre-production?) sold on eBay the other day: https://www.ebay.com/itm/266267742263
That wasn't a NuMachine processor, it's something else. The NuMachine processor was a single board with a 68k and some custom memory mapping stuff on it. Later it was reused with minor changes as the LMI Unix processor.
Nice - lots of AMD 29xx microcode stuff on there, I never saw any of the original NuMachines before.
We did look into emulating the Explorer II processor (Hummingbird) since there was more software available for it than the Explorer but the Hummingbird boot ROM is internal to the IC. We needed a working machine to dump the ROM from, and one wasn't found in time.
What a shame :(.
I think the only machines I might have access to (again) in the future are also all Explorer Is ("Sperry" OEM-labeled). These are currently 2000km away, but I hope we can move at least one of the machines and get it to work again.
Do you think the ROM from the MicroExplorer version of the IC would be useful for the emulator? I think the designation of the chip was different from the one used in the Explorer II, but I suspect the two might still be quite closely related. A MicroExplorer might be a bit easier to find in a working condition...
Update (x2, I didn't find the EPROM originally): a MicroExplorer ROM dump is available at bitsavers [1] - 64 kB in size. However, this seems to be a dump of the TMM24512F EPROM on the PCB [2]. The EPROM doesn't seem to contain 68k machine code, which I would have expected in a regular NuBus card ROM, so perhaps this version of the Explorer chip booted from the external PROM?
[1] http://www.bitsavers.org/pdf/ti/microexplorer/microexplorer-... [2] http://bitsavers.trailing-edge.com/bits/TI/Explorer/pcb_pict...
IIMU this is the ROM expected by the Mac Toolbox, but I am not that familiar with the guts of NuBus Macs. I haven't touched Explorer emulation in years, when it dead-ended I moved on to LMI stuff and then gave up on lisp stuff completely when working on the LMI stuff attracted a bunch of outrage.
What outrage if I can ask? Your LMI emulator (if you're who I think you are) is great!
The outrage was primarily centered on what my work wasn't - It wasn't written in (Insert trendy language here) which meant it was an attack on those, it wasn't advancing (Insert cause here) which meant it was an attack on them, it wasn't a CADR, it wasn't Symbolics Genera, it wasn't running on (Insert environment here), and it wasn't living up to the hype surrounding Lisp Machines in general.
When I got actual hardware to examine it got a lot worse; nearly all of the feedback I got after that revolved around my being too poor/young/not-famous-youtuber-X/unwilling to part them out. When pictures of my house were posted because I was unwilling to sell a keyboard that was too much. None of this stuff was worth my safety.
On top of that, the vast majority of the people who downloaded the emulator didn't even bother to download the disk images or documentation - they just cloned the source repository, did "./configure", and then sent hate mail when it didn't work because the source repository wasn't a release source and required you to do the whole autotools thing.
It became a no-win scenario - there was no way I was going to live up to the expectations people had and no way I was ever going to make the gatekeepers happy so I just stopped trying. I moved on to other things that seem to be a lot less controversial and when I do work on something that may be controversial I just don't tell anyone about it.
Hell is other people. I thank you for an excellent effort regardless of them. I built it using your very descriptive docs and images and it ran well.
> It would be interesting to know why they didn't go with Motorola's own VME bus.
VME cards are huge, and IIRC not keyed. IIRC Nubus was not only smaller but faster. Also, thanks to Apple at least, there were a wider variety of nubus boards; though VME was quite extensively used, it was mostly in industrial cases.
ISTR the CADR cardcage was VME, or at least had VME-sized boards.
Both NuBUS and VME were large. Apple was choosing a smaller form factor for their NuBUS use. The NuBUS probably was generally cheaper and faster than the VME-Bus. They were also easy to use for the end user.
The original large VME-Bus cards was problematic for end users: large, fragile, expensive, ...
It is funny to see VME boards considered "large" (though there were options to allow them to be huge). The name is "VersaModules European format" replacing the 370x230mm VersaBus boards with 233.35x160mm 6U for typical VME boards. Simple i/o could use 3U (100x160mm) boards. This reduction was possible because of denser chips, specially PALs.
Very large boards (9U height and/or 340mm or more depth) were used later, as I mentioned above. But I consider them the exception.
Apple wanted an ISA-like form factor so the cards became 101.6mm high and between 177.8 and 327mm deep. So a bit smaller, but not that much than more typical VME boards. The less squarish form factor does make routing signals to the connector a little more complicated.
My Symbolics XL1200 Lisp Machine had size 9U x 400 Eurocard boards, with 7 slots. It comes with one Ivory Main Board and one Ivory I/O Board.
CADR is XBus (its own thing) and Unibus.
ah yes, Unibus!
At that time TI did many interesting things. I remember using TI PC Scheme with great joy: https://news.ycombinator.com/item?id=36235175
Oh, wow. I used this in a class many years ago, but had forgotten all about it. I can't say I felt joy at the load times for the EDWIN editor on an AT&T 6300 PC, an 8MHz 8086 machine made by Olivetti. Once it was loaded it was fine.
Texas Instruments also sold Personal Consultant Plus, an EMYCIN-like expert system shell, which was implemented in PC Scheme: https://www.deepdyve.com/lp/wiley/personal-consultant-plus-0...
A Polish book using TI PC Scheme was my first brush with Lisps (plus awareness of AutoLISP).
I can thank opening myself to wider world of programming languages (and all my use of Lisps) to that small 1990 book.
Yesterday's discussion about that system: https://news.ycombinator.com/item?id=36212632
Comment was deleted :(
Crafted by Rajat
Source Code