Gary Kildall Chats with Computer Language Magazine
The man behind CP/M talks about his operating system and programming languages
I apologize for the lack of articles this month. Work has kept me busy. In the meantime, enjoy this interview with Gary Kildall. Kildall mentions DR Logo in this interview. I covered it here about a year ago. Enjoy!
P.S. Fellow Substacker Al from
released an in-depth documentary about Kildall on Youtube. He released a longer version without ads on his Substack for his paid subscribers. It is well worth the watch if you want to find out more about Kildall.A chat with Gary Kildall, founder of CP/M
By Regina Starr Ridley
Gary Kildall, inventor of CP/M and founder and chairman of Digital Research Inc., is a soft-spoken, unpretentious man.
His office is rather ordinary and looks like it belongs to someone who works hard. Computer hardware is strewn about and numbers are scrawled on a black-board on one wall.
Large windows face a hill covered with pine trees—unlike many of his peers, Kildall chose to build DRl's headquarters in Monterey, one of California's most beautiful coastal towns and a few hours drive from less aesthetically appealing Silicon Valley.
Kildall is one of the few individuals to whom the cliché "he revolutionized the microcomputer industry" actually applies. But looking at the 42 -year-old Kildall—trim, tanned, freckled, and dressed in casual clothes — it's easier to imagine him as an outdoors man than a computer scientist.
But he is indeed quite a computer scientist. He also is a major force behind the direction Digital Research is taking in the current, tempestuous market. The course he is steering reflects one man's insights into what the future in software and operating systems may hold.
Originally, Kildall's primary interest was in computer languages, and his goal was to teach computer science. He received a B.S. in numerical analysis and an M.S. and Ph.D. in computer science from the Univ. of Washington. His thesis work was on compiler code optimization—theoretical approaches to doing optimal code generation. While at school, he did maintenance work on Burroughs' ALGOL compiler.
After receiving his Ph.D. in 1972. Kildall went on to teach general computer science and compiler courses at the Naval Postgraduate School in Monterey. During the one day a week and one quarter a year allotted for consulting work, Kildall worked for Intel.
"During that time at Intel, I became interested in microcomputers," said Kildall. "Micros were just starting out, and they didn't have any software at all—just really very basic software. I started to do some universal software tools for Intel, simulation of their machines on the bigger computer, and various things that were needed to get things off the ground."
Kildall became interested in trying to get a high-level language around microcomputer software development, not for end users but for people who were trying to write software.
That interest prompted the development of PL/M (Programming Language for Micros), a derivative of a XP/L, a compiler writing language. His work on PL/M led directly to the development of CP/M (Control Program for Micros).
"CP/M was actually a follow-on product in support of PL/M and not intended to be a product in its own right," Kildall chuckled. "We needed to have some kind of an operating system to be the foundation for running a program that would support PL/M. That's why the name is the same, basically."
"At that time I didn't think much about CP/M other than it was nice people were interested in it," said Kildall. "The people who I was working with sort of realized that there was something there, but that it was going to take some time before it actually caught on."
Kildall worked for about a year trying to get PL/M on a microcomputer, one of the Intel development systems. "It was going along pretty well," said Kildall, "but Intel was going off in its own direction." Intel had started its own PL/M compiler development internally, separate from Kildall's work. Intel had also started its own operating system development called Isis, which, said Kildall, was very much like CP/M.
"Intel decided that its big philosophy in selling software was that it would use that software to sell its little blue boxes. Intel said, 'we don't want to unbundle our software because that way somebody else could come along with a look-alike blue box and then undercut us in price,'" said Kildall.
"Intel was selling those development systems for 525,000 a piece and doing really well with them. So if it had sold Isis, which was essentially equivalent to CP/M , with what originally was a $60 to S70 price tag, it could have completely wiped out the blue box sales."
DRI was founded in 1976 because of interest in CP/M. "Some people had used it and, you know, people liked it." Kildall said modestly. "There were a lot of different operating systems with different tangential kinds of features, and they all had a variety of faults. CP/M just happened to be simple but useful." It took about nine months to put together CP/M itself, and about a year to complete the programs that had to go with it. Kildall officially left the Postgraduate School in 1978.
About that time, the PL/I standardization committee was meeting in Carmel, Calif., and had just finished the first PL/I ANSI standardization specification. The committee was trying to produce two subsets, subset G for general purpose and another subset for real time.
"PL/M was a dialect of XP/L, and XP/L had been a dialect of PL/I, and they were all intermixed as far as the syntax and their general appearance," Kildall said. "But there was very little else that was similar besides the common family tree. I did realize at that point that the people working on the PL/I subset G were doing a really nice thing. They knew that the full language was not going to be supported on a small computer—it just wouldn't fit, that was all."
Kildall began to feel that PL/I subset G was a reasonable language for doing work with small computers. And CP/M needed to have an applications language of some sort. So he decided to do an implementation of PL/I subset G. That's where the Digital Research PL/I compiler started off.
Kildall thought the compiler wouldn't be too difficult to do and would take about nine months. But he said ruefully, it wound up taking two years.
The project also didn't have the impact he thought it would on the applications users. "The difficulty we had was that the machines we were working with still had relatively small memory systems. And the difference between high-level code vs. assembly language code was still significant to people." Kildall said.
"I think it was a good project and definitely worthwhile, but I sort of felt that the 8086 chip was going to be more popular sooner than it was," he added. "It was out in about 1978 and showed real promise, but it just didn't get picked up. And we really couldn't sell the idea of high-level language coding on small computers until we had a bigger memory system. So now that the 8086 and that whole family is popular, there's not such an emphasis on compactness of approach and people are writing applications using high-level languages now."
Since coming out with CP/M in 1978, DRI has introduced CP/M 86, CP/M for a 16-bit computer; MP/M 86, multi-user CP/M for a 16-bit computer: Concurrent CP/M, which has multitasking, networking, real-time, and windowing capabilities; and Concurrent PC-DOS, which has the same capabilities as Concurrent CP/M but can be used on IBM micro systems.
MS-DOS and PC-DOS hit CP/M 86 pretty hard in the marketplace. The problem was, according to Kildall, CP/M 86 was not meant to be DRI's primary product—it was to be used as a stepping stone to MP/M and Concurrent CP/M.
"I misjudged the timing somewhat—it wasn't really until this year that people started thinking multitasking was important," said Kildall. "Now IBM has announced Top View with multitasking, emphasizing that multitasking is an important concept. So most people say 'Oh, IBM says that multitasking is an important concept, so it must be an important concept,'" Kildall laughed.
Kildall didn't feel that the high price of CP/M 86 compared with MS-DOS was an important issue. "If we had been prepared with a CP/M 86 strategy we would have been able to do the pricing right, and we would have been prepared for the IBM phenomenon. We were prepared for a multitasking phenomenon."
"We figured," he said, "we have a megabyte of memory, what are we going to do with that megabyte of memory? Most applications were not going to use a million bytes of memory. We figured that people wanted an operating system with more functionality than you had in 8-bit computer operating systems."
"So now we've reached a situation where IBM has endorsed multitasking and multi-users. But they're saying, 'we're going to give you these things, but we don't have the tools right now.' The best thing for them would be to have a PC-DOS that had multitasking and multi-user capabilities. And if they had that they wouldn't announce anything else. Top View gives you multitasking, real time, networking, and multi-using."
"The thing is that's exactly the product that we were building," said Kildall. "IBM's endorsement has caused a lot of OEMs to come back to us and say, 'I can now endorse your product because I've realized the importance of Concurrent CP/M.'"
"This is the basis for the interest in Concurrent CP/M and Concurrent DOS. And we have other products beyond this that haven't been announced. Then there are follow-on products that are just kind of progressive steps, adding facilities, I want to be careful of what I say, because I don't want to say anything about something that hasn't been released yet."
According to Kildall, Concurrent CP/M and Concurrent DOS are doing very well at the OEM level, which he feels is the most important indicator. He considers earnings from Concurrent to be a very significant part of DRI's revenue.
"We really believe in Concurrent, there's no question about that," said Kildall. "But it does come back entirely to the fact that you can be successful only if you have the backing of the large manufacturers nowadays. And that's exactly what we're working on doing."
Concurrent is actually the sixth generation of the CP/M operating system, Kildall pointed out. "When you take a look at some things like Top View and UNIX and so forth, you see they're sort of half-baked in a micro sense because they can't really perform those low-level functions as effectively as Concurrent."
Kildall breaks down UNIX into three important elements: the operating system, the C language, and the standard run-time library. He feels the major contribution UNIX has made has been in the standardization of the run-time library and the C language. "If you're careful and write C source code in a machine-independent way, and you set up your library so that it matches the UNIX standard run-time subroutines, then you can get transportation from one processor or one operating system to many different processors or many different operating systems without any major recoding," he said.
Kildall is not nearly so supportive of the UNIX operating system, which he said is pretty welt known in the industry as being "loosey-goosey"— not a very tight system. He has also experienced many problems with it in terms of reliability and clarity of the user interface.
"You talk to anybody who's a UNIX user, and they will say 'UNIX is great but it has a lot of problems in terms of commercialization of the operating system.' You can go to the C language and say, yes, there's lots of things I would have done differently. But the fact of the matter is that in spite of its shortcomings, the C language and the run-time library give you transportation, and that's something which is very, very valuable."
"There are lots and lots of operating systems around. The UNIX operating system itself doesn't have any inherent new technology, And that's why I'm not as hot on the operating system as I am on the language and the standardization of the runtime system."
"We certainly are working with the UNIX phenomenon in the sense that we are offering portable software. And this goes back to my original comment about C and the standard run-time library. Our software now will run on virtually any operating system we choose, and one of the targets is UNIX. Now, as UNIX becomes popular with various people, we can offer our software products on UNIX. Now that's where the money is."
"The intention is to make all of our products portable through C and its run-time library, which of course makes them immediately portable to UNIX because that's C's original home. Our initial support of UNIX is through what we call the UNIX application library that we've constructed for AT&T."
Transportation of a high-level language like PL/I or the C compiler itself is a much more difficult task than porting over applications like DR Logo, for example, said Kildall. DR Logo transports very, very rapidly because there are few machine dependencies.
DR Logo is DRI's main product on the education market. Kildall saw Logo come around and was very interested in it because of the way the language used LISP concepts—recursion, list processing and homogeneity.
"I personally never really liked BASIC at all," said Kildall. "It was a language that came from FORTRAN, the early days of FORTRAN. It was not intended to be a general language used by the masses."
Kildall has always felt that BASIC was not a good learning model because the use of numbers is a very limited concept that in turn enforces a limited style of programming. "It's very difficult to make leaps from that into something with more general concepts."
Kildall prefers using LISP to teach programming because it has the most general concept of what programming should be because it's all symbolic. "You can literally do almost any kind of operation that you want very quickly and easily," he said.
The problem with LISP, said Kildall, is its very user unfriendly syntax. He didn't want to bring LISP to microcomputers because its unfriendly nature would turn people off to using it.
Logo was originally intended to get rid of some of the unfriendly nature of the front end and still get all the power of LISP. Graphics were added, Kildall said, because you could use them for a kind of a bait and switch. First people would be tempted with the graphics, and then they could discover all the other things that could be done with LISP.
The push behind DR Logo was "let's get in there and try' to do a personal computer Logo and get people away from the concepts of BASIC as much as we can. Let's get rid of BASIC and go with a language that actually gives people a tool to think with, rather than make a person first learn concepts that have little to do with the problem they're solving," Kildall said.
Support of Logo has been slowly building, said Kildall. "It takes a year or two before you can really tell if something is taking off or not. DR Logo has moved very nicely and sales through OEMs are picking up."
DRI has pulled back somewhat from the education market. "We have closed up a lot of things at the retail level. For example, with DR Logo we're not offering anything more than our original version on the retail level basically because price cutting at the consumer level has been so dramatic that we can't make any money on it. We decided to put all our efforts into OEMs."
"We tried to get the consumer business going. What we're getting is that every time we came up with a product like DR Logo in the consumer division, our OEM interest in it was so much greater that retail was of little interest. We take three-quarters of our people working on retail and one-quarter on the OEM level, and the one-quarter makes 10 times as much as the three-quarters. So we just decided to slack off a bit."
Kildall sees the principle market for DRI as being the high-end commercial market. "It's unfortunate but it goes back to when you try to keep a business going and the profit level at a reasonable rale, the products that are bringing in the most revenue are the ones people will gravitate toward. The difficulty in concentrating in educational products— which I'd like to— is that there is a much larger margin in commercial software."
Kildall seems to have found an equilibrium between the computer scientist, the businessman, and the human being. Having leadership with this kind of balanced outlook makes DRFs future look promising.
Regina Starr Ridley is the managing editor of COMPUTER LANGUAGE.
What computer ads would you like to see in the future? Please comment below. If you enjoyed, please share with your friends and relatives. Thank you.