Jonathan Schaeffer's first chess program. When Schaeffer started studying computer science at the University of Waterloo in 1979, he met Ron Hansen, co-author of Ribbit and Treefrog, who generously gave him a copy of his program, which Schaeffer used to learn how to write a chess program. For his master's thesis, he translated the Fortran program into the Z programming language (similar to the well known C programming language), as a code base to implement own chess knowledge and long range planning.
My time at Waterloo greatly benefited from the presence of Ron Hansen. He was author of Ribbit (later called Treefrog), one of the strongest chess programs around. He generously gave me a copy of his program, which I used to learn how to write a chess program... Hansen's program was written in a computer programming language called Fortran. For my master's thesis, I translated it into the Z programming language (similar to the well known C programming language).
Everything I read about chess programs convinced me that they were ignorant; they had little in the way of chess knowledge. Of course, since I knew a lot about chess, it would be a simple matter of translating my expertise into code and voilà, success! I spent a year working on the program, adding as much knowledge as I could to it. The new program, dubbed Planner, failed to live up to my performance expectations. Gradually my enthusiasm began to wave. The chess knowledge that I had added was simple because important concepts seemed hard to program. The machine required a precise specification but my chess knowledge was imprecise. Further, for every piece of knowledge that I added, there always seemed to be an endless stream of exceptions. This was going to be harder than I thought.
I finished my master's thesis, titled Long Range Planning in Computer Chess, and graduated in 1980.