MUF Mastery - Leor Zolman (original) (raw)
Go to the first, previous, next, last section, table of contents.
Leor Zolman isn't a major figure in computer science like Donald Knuth, but all the same I, Muq, and myriad otherfolk have much reason to thank Leor, which I think is reason enough to give him mention here.
Leor Zolman wrote the BDS C ("Brain Damage Software", I'm told, "Brain Damage" supposedly being Leor's MIT nickname) compiler for CP/M and sold it for $110 or so, in an era when CP/M compilers were hard to find, and in particular when the only other C compiler of note cost double what the typical Pascal compiler cost, and ten times what BDS C cost.
BDS C is one of the most beautiful programs in the history of computing in terms of applying originality of design and implementation to achieve a sweet balance between means and ends:
Through an amazingly judicious choice of implementation techniques and language subsetting, Leor produced a compiler which gave a compile time of seconds on a 32Kbyte floppy-based machine, resulting in a debug cycle as quick and pleasant on that machine as that available on most mainframes of the time, or indeed most workstations today.
To truly appreciate this accomplishment, you need to compare it with Whitesmith's C, a straight-forward professionally done implementation of C for CP/M that cost ten times as much, was at least ten times as big, and took many times longer to compile anything.
BDS C had a significant role in establishing C as the force it is today in microcomputing: When it appeared, Pascal was clearly the dominant microcomputer language in the Algolic class, and there was no other affordable C compiler available.
BDS C resulted in porting of code back and forth between Unix and CP/M -- including (as I can personally testify) such tools as Yacc, otherwise unavailable in the CP/M world at any price.
BDS C sparked one of the first serious attempts at a free Unix for micros: MARC, intended in part as a memorial for Ed Ziemba, killed in a diving accident. (I'd be curious to hear what happened. My own experiences trying to implement stuff like Smalltalk on CP/M lead me to suspect that MARC simply hit a hardware wall: There's only so much you can do when given about 16K of code space and 16K of data space.)
BDS C spawned the BDS C User's Group, still active today, albeit now calling itself the C User's Group, which in turn did much to promote C on micros and the circulation of C software and tools between the micro and workstation worlds.
Finally, BDS C induced me to learn C, and to write a series of projects in BDS C, including Citadel (a system which itself in turn introduced a certain number of microfolk to learn and use C). Several of these projects have been deep influences on Muq, most notably Tetra, a byte-coded RPN programming system with virtual memory (off floppy!) and text windows, many echos of which may be seen in Muq.
I'm told Leor once walked into a conference packed with compiler folk, and was astonished when they gave him a standing ovation. I hope it is true: He deserves it, and much more.
Go to the first, previous, next, last section, table of contents.