Brian Kernighan

From Wikipedia, the free encyclopedia

Jump to: navigation, search

Brian Wilson Kernighan (pronounced /ˈkɛrnɪhæn/, the 'g' is silent), (born January 1942, Toronto, Ontario, Canada) is a computer scientist who worked at Bell Labs alongside Unix creators Ken Thompson and Dennis Ritchie and contributed greatly to Unix and its school of thought. He is also coauthor of the AWK and AMPL programming languages. The 'K' of K&R C and the 'K' in AWK both stand for 'Kernighan'.

Kernighan's name became widely known through co-authorship of the first book on the C programming language with Dennis Ritchie. Kernighan has said that he had no part in the design of the C language ("it's entirely Dennis Ritchie's work"). He authored many Unix programs, including ditroff, and cron for Version 7 Unix.

In collaboration with Shen Lin he devised well-known heuristics for two NP-complete optimization problems: graph partitioning and the travelling salesman problem. (In a display of authorial equity, the former is usually called the Kernighan-Lin algorithm, while the latter is styled Lin-Kernighan.)

Brian was the software editor for Prentice-Hall International. His "Software Tools" series spread the essence of 'C/Unix thinking' with makeovers for BASIC, FORTRAN, and Pascal - and most notably his 'Ratfor' (rational FORTRAN) was put in the public domain.

He has said that if stranded on an island with only one programming language it would have to be C.[1]


[edit] Education

He received his Bachelor's degree in Engineering Physics from the University of Toronto. He received his PhD in electrical engineering from Princeton University, where he has held a professorship in the department of computer science since 2000. Each fall he teaches a course called "Computers in Our World", which introduces the fundamentals of computing to non-majors.

He has on occasion revealed it was his own pun which led to the use of the name 'Unix' (initially 'Unics') for the operating system Ken Thompson and Dennis Ritchie were working on.

[edit] Summary of Achievements

[edit] Writings

[edit] References

  1. ^ An Interview with Brian Kernighan

[edit] External links

Personal tools