J. Halcombe Laning

J. Halcombe "Hal" Laning Jr. (February 14, 1920, in Kansas City, Missouri – May 29, 2012) was a Massachusetts Institute of Technology computer pioneer who in 1952 invented an algebraic compiler called George (also known as the Laning and Zierler system after the authors of the published paper) that ran on the MIT Whirlwind, the first real-time computer. Laning designed George to be an easier-to-use alternative to assembly language for entering mathematical equations into a computer. He later became a key contributor to the 1960s race to the Moon, with pioneering work on space-based guidance systems for the Apollo Moon missions. From 1955 to 1980, he was deputy associate director of the MIT Instrumentation Laboratory.

In 1956 he published the book Random Processes in Automatic Control (McGraw-Hill Series on Control System Engineering), with Richard Battin as a coauthor.

In collaboration with Phil Hankins and Charlie Werner of MIT, he initiated work on MAC (MIT Algebraic Compiler), an algebraic programming language for the IBM 650, which was completed by early spring of 1958.

Career
Laning received his PhD from MIT in 1947 with a dissertation titled "Mathematical Theory of Lubrication-Type Flow". His undergraduate degree in Chemical Engineering (1940) was also from MIT.

He was elected to the National Academy of Engineering in 1983 for his work in aerospace engineering, particularly his "unique pioneering achievements in missile guidance and computer science—the Q-guidance system for Thor and Polaris [missiles] and George". He was also an honorary member of the American Mathematical Society.

Laning features prominently in the third episode of the Science Channel's documentary miniseries titled Moon Machines which aired in June 2008.

Apollo Program
He later worked in the MIT Draper Lab, with Richard H. Battin, to develop a scheme for doing onboard navigation on the Apollo program's command/service module guidance system. He designed the Executive and Waitlist operating system for the LGC (Lunar Module Guidance Computer) in the mid 1960s; he built it up from scratch with no examples to guide him, and the design is still valid. The allocation of functions among a sensible number of asynchronous processes, under control of a rate and priority-driven preemptive executive, still represents the state of the art in real-time GN&C computers for spacecraft. His design saved the Apollo 11 landing mission when the rendezvous radar interface program began using more register core sets and "Vector Accumulator" areas than were physically available in memory, causing the infamous 1201 and 1202 errors. Had it not been for Laning's design the landing would have been aborted for lack of a stable guidance computer.