John Cocke (May 30, 1925 – July 16, 2002) was an American computer scientist recognized for his large contribution to computer architecture and optimizing compiler design. He is considered by many to be "the father of RISC architecture."
He attended Duke University, where he received his Bachelor's degree in Mechanical Engineering in 1946 and his Ph.D. in Mathematics in 1956. Cocke spent his entire career as an industrial researcher for IBM, from 1956 to 1992.
Perhaps the project where his innovations were most noted was in the IBM 801 minicomputer, where his realization that matching the design of the architecture's instruction set to the relatively simple instructions actually emitted by compilers could allow high performance at a low cost.
He is one of the inventors of the CYK algorithm (C for Cocke). He was also involved in the pioneering speech recognition and machine translation work at IBM in the 1970s and 1980s, and is credited by Frederick Jelinek with originating the idea of using a trigram language model for speech recognition.Jelinek, Frederick, "The Dawn of Statistical ASR and MT", Computational Linguistics, 35(4), 2009, pp. 483-494,
Cocke was appointed IBM Fellow in 1972. He won the Eckert-Mauchly Award in 1985, Turing Award in 1987,John Cocke, The search for performance in scientific processors: the Turing Award lecture. Communications of the ACM, Volume 31 Issue 3, March 1988, Pages 250-253. the National Medal of Technology in 1991 and the National Medal of Science in 1994, IEEE John von Neumann Medal in 1984, The Franklin Institute's Certificate of Merit in 1996, the Seymour Cray Computer Engineering Award in 1999, and The Benjamin Franklin Medal in 2000.
He was born in Charlotte, North Carolina and died in Valhalla, New York.