List of computer scientists
   HOME

TheInfoList



OR:

This is a list of computer scientists, people who do work in
computer science Computer science is the study of computation, automation, and information. Computer science spans theoretical disciplines (such as algorithms, theory of computation, information theory, and automation) to practical disciplines (includi ...
, in particular
research Research is " creative and systematic work undertaken to increase the stock of knowledge". It involves the collection, organization and analysis of evidence to increase understanding of a topic, characterized by a particular attentiveness ...
ers and authors. Some persons notable as programmers are included here because they work in research as well as program. A few of these people pre-date the invention of the digital computer; they are now regarded as computer scientists because their work can be seen as leading to the invention of the computer. Others are mathematicians whose work falls within what would now be called theoretical computer science, such as complexity theory and
algorithmic information theory Algorithmic information theory (AIT) is a branch of theoretical computer science that concerns itself with the relationship between computation and information of computably generated objects (as opposed to stochastically generated), such as str ...
.


A

* Atta ur Rehman Khan
Mobile Cloud Computing Mobile Cloud Computing (MCC) is the combination of cloud computing and mobile computing to bring rich computational resources to mobile users, network operators, as well as cloud computing providers.Fangming Liu, Peng Shu, Hai Jin, Linjie Ding, Jie ...
,
Cybersecurity Computer security, cybersecurity (cyber security), or information technology security (IT security) is the protection of computer systems and networks from attack by malicious actors that may result in unauthorized information disclosure, t ...
, IoT *
Wil van der Aalst Willibrordus Martinus Pancratius van der Aalst (born 29 January 1966) is a Dutch computer scientist and full professor at RWTH Aachen University, leading the Process and Data Science (PADS) group. His research and teaching interests include i ...
business process management Business process management (BPM) is the discipline in which people use various methods to discover, model, analyze, measure, improve, optimize, and automate business processes. Any combination of methods used to manage a company's business p ...
,
process mining Process mining is a family of techniques relating the fields of data science and process management to support the analysis of operational processes based on event logs. The goal of process mining is to turn event data into insights and actions. P ...
,
Petri nets A Petri net, also known as a place/transition (PT) net, is one of several mathematical modeling languages for the description of distributed systems. It is a class of discrete event dynamic system. A Petri net is a directed bipartite graph that ...
*
Scott Aaronson Scott Joel Aaronson (born May 21, 1981) is an American theoretical computer scientist and David J. Bruton Jr. Centennial Professor of Computer Science at the University of Texas at Austin. His primary areas of research are quantum computing a ...
quantum computing and complexity theory *
Rediet Abebe Rediet Abebe (Amharic: ረድኤት አበበ; born 1991) is an Ethiopian computer scientist working in algorithms and artificial intelligence. She is an Assistant Professor of Computer Science at the University of California, Berkeley. Previousl ...
algorithm In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing ...
s,
artificial intelligence Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech r ...
* Hal Abelson – intersection of computing and teaching *
Serge Abiteboul Serge Joseph Abiteboul (born 25 August 1953 in Paris, France) is a French computer scientist working in the areas of data management, database theory, and finite model theory. Education The son of two hardware store owners, Abiteboul attended ...
– database theory *
Samson Abramsky Samson Abramsky (born 12 March 1953) is Professor of Computer Science at University College London. He was previously the Christopher Strachey Professor of Computing at the University of Oxford, from 2000 to 2021. He has made contributions to t ...
game semantics Game semantics (german: dialogische Logik, translated as ''dialogical logic'') is an approach to Formal semantics (logic), formal semantics that grounds the concepts of truth or Validity (logic), validity on game theory, game-theoretic concepts, su ...
*
Leonard Adleman Leonard Adleman (born December 31, 1945) is an American computer scientist. He is one of the creators of the RSA encryption algorithm, for which he received the 2002 Turing Award, often called the Nobel prize of Computer science. He is also kno ...
RSA,
DNA computing DNA computing is an emerging branch of unconventional computing which uses DNA, biochemistry, and molecular biology hardware, instead of the traditional electronic computing. Research and development in this area concerns theory, experiments, a ...
*
Manindra Agrawal Manindra Agrawal (born 20 May 1966) is a professor at the Department of Computer Science and Engineering and the Deputy Director at the Indian Institute of Technology, Kanpur. He was also the recipient of the first Infosys Prize for Mathematics ...
– polynomial-time primality testing *
Luis von Ahn Luis von Ahn (; born 19 August 1978) is a German-Guatemalan entrepreneur and a consulting professor in the Computer Science Department at Carnegie Mellon University in Pittsburgh, Pennsylvania. He is known as one of the pioneers of crowdsourcin ...
human-based computation Human-based computation (HBC), human-assisted computation, ubiquitous human computing or distributed thinking (by analogy to distributed computing) is a computer science technique in which a machine performs its function by outsourcing certain ste ...
*
Alfred Aho Alfred Vaino Aho (born August 9, 1941) is a Canadian computer scientist best known for his work on programming languages, compilers, and related algorithms, and his textbooks on the art and science of computer programming. Aho was elected into ...
– compilers book, the 'a' in
AWK AWK (''awk'') is a domain-specific language designed for text processing and typically used as a data extraction and reporting tool. Like sed and grep, it is a filter, and is a standard feature of most Unix-like operating systems. The AWK lang ...
* Frances E. Allencompiler optimization *
Gene Amdahl Gene Myron Amdahl (November 16, 1922 – November 10, 2015) was an American computer architect and high-tech entrepreneur, chiefly known for his work on mainframe computers at IBM and later his own companies, especially Amdahl Corporation ...
supercomputer developer,
Amdahl Corporation Amdahl Corporation was an information technology company which specialized in IBM mainframe-compatible computer products, some of which were regarded as supercomputers competing with those from Cray Research. Founded in 1970 by Gene Amdahl, a for ...
founder * David P. Anderson – volunteer computing * Lisa Anthony
natural user interface In computing, a natural user interface (NUI) or natural interface is a user interface that is effectively invisible, and remains invisible as the user continuously learns increasingly complex interactions. The word "natural" is used because most c ...
s *
Andrew Appel Andrew Wilson Appel (born 1960) is the Eugene Higgins Professor of computer science at Princeton University. He is especially well-known because of his compiler books, the ''Modern Compiler Implementation in ML'' () series, as well as ''Compili ...
– compiler of text books * Cecilia R. Aragon – invented
treap In computer science, the treap and the randomized binary search tree are two closely related forms of binary search tree data structures that maintain a dynamic set of ordered keys and allow binary searches among the keys. After any sequence of in ...
, human-centered data science *
Bruce Arden Bruce Wesley Arden ( – ) was an American computer scientist. Arden enlisted in the U.S. Navy during World War II (1944-1946) as a Radar Technician Third Class in California, Chicago, and Kodiak, Alaska. He graduated from Purdue University ...
– programming language compilers (GAT, Michigan Algorithm Decoder (MAD)), virtual memory architecture,
Michigan Terminal System The Michigan Terminal System (MTS) is one of the first time-sharing computer operating systems.. Developed in 1967 at the University of Michigan for use on IBM S/360-67, S/370 and compatible mainframe computers, it was developed and used by a con ...
(MTS) *
Sanjeev Arora Sanjeev Arora (born January 1968) is an Indian American theoretical computer scientist. Life He was a visiting scholar at the Institute for Advanced Study in 2002–03. In 2008 he was inducted as a Fellow of the Association for Computing Mac ...
PCP theorem * Winifred "Tim" Alice Asprey – established the computer science curriculum at
Vassar College Vassar College ( ) is a private liberal arts college in Poughkeepsie, New York, United States. Founded in 1861 by Matthew Vassar, it was the second degree-granting institution of higher education for women in the United States, closely foll ...
*
John Vincent Atanasoff John Vincent Atanasoff, , (October 4, 1903 – June 15, 1995) was an American physicist and inventor from mixed Bulgarian-Irish origin, best known for being credited with inventing the first electronic digital computer. Atanasoff invented the ...
– computer pioneer, creator of Atanasoff Berry Computer (ABC) * Shakuntala Atre – database theory


B

* Charles Babbage (1791–1871) – invented first mechanical computer called the supreme mathematician *
Charles Bachman Charles William Bachman III (December 11, 1924 – July 13, 2017) was an American computer scientist, who spent his entire career as an industrial researcher, developer, and manager rather than in academia. He was particularly known for his ...
– American computer scientist, known for
Integrated Data Store Integrated Data Store (IDS) was an early network database management system largely used by industry, known for its high performance. IDS became the basis for the CODASYL Data Base Task Group standards. IDS was designed in the 1960s at the ...
*
Roland Carl Backhouse Roland Carl Backhouse (born 18 August 1948) is a British computer scientist and mathematician. , he is Emeritus Professor of Computing Science at the University of Nottingham. Early life and education Backhouse was born and raised in the Thorn ...
– mathematics of
computer program A computer program is a sequence or set of instructions in a programming language for a computer to execute. Computer programs are one component of software, which also includes documentation and other intangible components. A computer program ...
construction,
algorithm In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing ...
ic problem solving,
ALGOL ALGOL (; short for "Algorithmic Language") is a family of imperative computer programming languages originally developed in 1958. ALGOL heavily influenced many other languages and was the standard method for algorithm description used by the ...
*
John Backus John Warner Backus (December 3, 1924 – March 17, 2007) was an American computer scientist. He directed the team that invented and implemented FORTRAN, the first widely used high-level programming language, and was the inventor of the Backu ...
FORTRAN, Backus–Naur form, first complete compiler * David F. Bacon – programming languages, garbage collection * David A. Bader * Victor Bahl * Anthony James Barr
SAS System SAS (previously "Statistical Analysis System") is a statistical software suite developed by SAS Institute for data management, advanced analytics, multivariate analysis, business intelligence, criminal investigation, and predictive analytics. ...
*
Jean Bartik Jean Bartik ( Betty Jean Jennings; December 27, 1924 – March 23, 2011) was one of the original six programmers for the ENIAC computer. Bartik studied mathematics in school then began work at the University of Pennsylvania, first manually ca ...
(1924–2011) – one of the first
computer programmers A computer programmer, sometimes referred to as a software developer, a software engineer, a programmer or a coder, is a person who creates computer programs — often for larger computer software. A programmer is someone who writes/creates ...
, on
ENIAC ENIAC (; Electronic Numerical Integrator and Computer) was the first programmable, electronic, general-purpose digital computer, completed in 1945. There were other computers that had these features, but the ENIAC had all of them in one pac ...
(1946), one of the first
Vacuum tube A vacuum tube, electron tube, valve (British usage), or tube (North America), is a device that controls electric current flow in a high vacuum between electrodes to which an electric potential difference has been applied. The type known as ...
computers, back when "programming" involved using cables, dials, and switches to physically rewire the machine; worked with
John Mauchly John William Mauchly (August 30, 1907 – January 8, 1980) was an American physicist who, along with J. Presper Eckert, designed ENIAC, the first general-purpose electronic digital computer, as well as EDVAC, BINAC and UNIVAC I, the first ...
toward
BINAC BINAC (Binary Automatic Computer) was an early electronic computer designed for Northrop Aircraft Company by the Eckert–Mauchly Computer Corporation (EMCC) in 1949. Eckert and Mauchly, though they had started the design of EDVAC at the Unive ...
(1949), EDVAC (1949),
UNIVAC UNIVAC (Universal Automatic Computer) was a line of electronic digital stored-program computers starting with the products of the Eckert–Mauchly Computer Corporation. Later the name was applied to a division of the Remington Rand company an ...
(1951) to develop early "
stored program A stored-program computer is a computer that stores program instructions in electronically or optically accessible memory. This contrasts with systems that stored the program instructions with plugboards or similar mechanisms. The definition ...
" computers * Andrew Barto *
Friedrich L. Bauer Friedrich Ludwig "Fritz" Bauer (10 June 1924 – 26 March 2015) was a German pioneer of computer science and professor at the Technical University of Munich. Life Bauer earned his Abitur in 1942 and served in the Wehrmacht during World War ...
Stack (data structure), ''Sequential Formula Translation'',
ALGOL ALGOL (; short for "Algorithmic Language") is a family of imperative computer programming languages originally developed in 1958. ALGOL heavily influenced many other languages and was the standard method for algorithm description used by the ...
,
software engineering Software engineering is a systematic engineering approach to software development. A software engineer is a person who applies the principles of software engineering to design, develop, maintain, test, and evaluate computer software. The term '' ...
,
Bauer–Fike theorem In mathematics, the Bauer–Fike theorem is a standard result in the perturbation theory of the eigenvalue of a complex-valued diagonalizable matrix. In its substance, it states an absolute upper bound for the deviation of one perturbed matrix eig ...
*
Rudolf Bayer Rudolf Bayer (born 3 March 1939) is a German computer scientist. He is professor emeritus of Informatics at the Technical University of Munich where he had been employed since 1972. He is noted for inventing three data sorting structures: the B- ...
B-tree In computer science, a B-tree is a self-balancing tree data structure that maintains sorted data and allows searches, sequential access, insertions, and deletions in logarithmic time. The B-tree generalizes the binary search tree, allowing for ...
*
Gordon Bell Chester Gordon Bell (born August 19, 1934) is an American electrical engineer and manager. An early employee of Digital Equipment Corporation (DEC) 1960–1966, Bell designed several of their PDP machines and later became Vice President of Engi ...
(born 1934) – computer designer DEC
VAX VAX (an acronym for Virtual Address eXtension) is a series of computers featuring a 32-bit instruction set architecture (ISA) and virtual memory that was developed and sold by Digital Equipment Corporation (DEC) in the late 20th century. The V ...
, author: ''Computer Structures'' * Steven M. Bellovin
network security Network security consists of the policies, processes and practices adopted to prevent, detect and monitor unauthorized access, misuse, modification, or denial of a computer network and network-accessible resources. Network security involves th ...
*
Cecilia Berdichevsky Cecilia Berdichevsky or Berdichevski (née Tuwjasz) (1925 – 2010) was a pioneering Argentinian computer scientist and began her work in 1961 using the first Ferranti Mercury computer in that country. Biography She was born Mirjam Tuwjasz
(1925–2010) pioneering Argentinian computer scientist * Tim Berners-Lee
World Wide Web The World Wide Web (WWW), commonly known as the Web, is an information system enabling documents and other web resources to be accessed over the Internet. Documents and downloadable media are made available to the network through web ...
* Daniel J. Bernstein – qmail, software as protected speech *
Peter Bernus Peter Bernus (born 1949) is a Hungarian Australian scientist and Associate Professor of Enterprise Architecture at the School of Information and Communication Technology, Griffith University, Brisbane, Australia.
* Abhay Bhushan * Dines Bjørner
Vienna Development Method The Vienna Development Method (VDM) is one of the longest-established formal methods for the development of computer-based systems. Originating in work done at the IBM Laboratory Vienna in the 1970s, it has grown to include a group of techniques ...
(VDM),
RAISE Raise may refer to: Music *''Raise!'', the name of a 1981 album by Earth, Wind, and Fire * '' Raise'' (album), the name of a 1991 album by Swervedriver Place names * Raise, Cumbria, England * Raise (Lake District), the name of the 12th highe ...
*
Gerrit Blaauw Gerrit Anne "Gerry" Blaauw (July 17, 1924 – March 21, 2018) was a Dutch computer scientist, known as one of the principal designers of the IBM System/360 line of computers, together with Fred Brooks, Gene Amdahl, and others. ...
– one of the principal designers of the IBM System 360 line of computers * Sue Black *
David Blei David Meir Blei is a professor in the Statistics and Computer Science departments at Columbia University. Prior to fall 2014 he was an associate professor in the Department of Computer Science at Princeton University. His work is primarily in mach ...
* Dorothy Blum
National Security Agency The National Security Agency (NSA) is a national-level intelligence agency of the United States Department of Defense, under the authority of the Director of National Intelligence (DNI). The NSA is responsible for global monitoring, collect ...
*
Lenore Blum Lenore Carol Blum (née Epstein, born December 18, 1942) is an American computer scientist and mathematician who has made pioneering contributions to the theories of real number computation, cryptography, and pseudorandom number generation. She ...
complexity *
Manuel Blum Manuel Blum (born 26 April 1938) is a Venezuelan-American computer scientist who received the Turing Award in 1995 "In recognition of his contributions to the foundations of computational complexity theory and its application to cryptography and ...
cryptography Cryptography, or cryptology (from grc, , translit=kryptós "hidden, secret"; and ''graphein'', "to write", or ''-logia'', "study", respectively), is the practice and study of techniques for secure communication in the presence of adver ...
*
Barry Boehm Barry William Boehm (May 16, 1935 – August 20, 2022) was an American software engineer, distinguished professor of computer science, industrial and systems engineering; the TRW Professor of Software Engineering; and founding director of the Cen ...
– software engineering economics, spiral development *
Corrado Böhm Corrado Böhm (17 January 1923 – 23 October 2017) was a Professor Emeritus at the University of Rome "La Sapienza" and a computer scientist known especially for his contributions to the theory of structured programming, constructive mathem ...
– author of the structured program theorem *
Kurt Bollacker Kurt Bollacker is an American computer scientist with a research background in the areas of machine learning, digital libraries, semantic networks, and electro-cardiographic modeling. He received a Ph.D. in Computer Engineering from The Universi ...
* Jeff Bonwick – invented
slab allocation Slab allocation is a memory management mechanism intended for the efficient memory allocation of objects. In comparison with earlier mechanisms, it reduces fragmentation caused by allocations and deallocations. This technique is used for retai ...
and
ZFS ZFS (previously: Zettabyte File System) is a file system with volume management capabilities. It began as part of the Sun Microsystems Solaris operating system in 2001. Large parts of Solaris – including ZFS – were published under an ope ...
*
Grady Booch Grady Booch (born February 27, 1955) is an American software engineer, best known for developing the Unified Modeling Language (UML) with Ivar Jacobson and James Rumbaugh. He is recognized internationally for his innovative work in software archi ...
Unified Modeling Language The Unified Modeling Language (UML) is a general-purpose, developmental modeling language in the field of software engineering that is intended to provide a standard way to visualize the design of a system. The creation of UML was originally m ...
,
Object Management Group The Object Management Group (OMG) is a computer industry standards consortium. OMG Task Forces develop enterprise integration standards for a range of technologies. Business activities The goal of the OMG was a common portable and interoperab ...
*
George Boole George Boole (; 2 November 1815 – 8 December 1864) was a largely self-taught English mathematician, philosopher, and logician, most of whose short career was spent as the first professor of mathematics at Queen's College, Cork in ...
Boolean logic * Andrew Booth – developed the first rotating drum storage device *
Kathleen Booth Kathleen Hylda Valerie Booth ( Britten, 9 July 1922 – 29 September 2022) was a British computer scientist and mathematician who wrote the first assembly language and designed the assembler and autocode for the first computer systems at Birkbe ...
– developed the first assembly language *
Anita Borg Anita Borg (January 17, 1949 – April 6, 2003) was an American computer scientist. She founded the Institute for Women and Technology and the Grace Hopper Celebration of Women in Computing. Education and early life Borg was born Anita Borg Naf ...
(1949–2003) – American computer scientist, founder of Anita Borg Institute for Women and Technology *
Bert Bos Gijsbert (Bert) Bos (born 1963Gijsbert BosRapid user interface development with the script language Gist, Dissertation, Groningen University, 1993) is a computer scientist known for the development of Argo, a web browser he developed as test app ...
Cascading Style Sheets * Mikhail Botvinnik – World Chess Champion, computer scientist and electrical engineer, pioneered early expert system AI and computer chess * Jonathan Bowen
Z notation The Z notation is a formal specification language used for describing and modelling computing systems. It is targeted at the clear specification of computer programs and computer-based systems in general. History In 1974, Jean-Raymond Abria ...
,
formal methods In computer science, formal methods are mathematically rigorous techniques for the specification, development, and verification of software and hardware systems. The use of formal methods for software and hardware design is motivated by the exp ...
* Stephen R. BourneBourne shell, portable
ALGOL 68C ALGOL 68C is an imperative computer programming language, a dialect of ALGOL 68, that was developed by Stephen R. Bourne and Michael Guy to program the Cambridge Algebra System (CAMAL). The initial compiler was written in the Princeton Syntax ...
compiler *
Harry Bouwman Willem Adriaan Gerrit Anton ("Harry") Bouwman (born Tilburg, 1953) is a Dutch Information systems researcher, and professor at the Åbo Akademi University, Institute for Advanced Management Systems Research, known for his work on mobile services, ...
(born 1953) – Dutch Information systems researcher, and Professor at the Åbo Akademi University *
Robert S. Boyer Robert Stephen Boyer is an American retired professor of computer science, mathematics, and philosophy at The University of Texas at Austin. He and J Strother Moore invented the Boyer–Moore string-search algorithm, a particularly efficie ...
– string searching, ACL2 theorem prover *
Karlheinz Brandenburg Karlheinz Brandenburg (born 20 June 1954) is a German electrical engineer and mathematician. Together with Ernst Eberlein, Heinz Gerhäuser (former Institutes Director of Fraunhofer IIS), Bernhard Grill, Jürgen Herre and Harald Popp (all Fraun ...
– Main
mp3 MP3 (formally MPEG-1 Audio Layer III or MPEG-2 Audio Layer III) is a coding format for digital audio developed largely by the Fraunhofer Society in Germany, with support from other digital scientists in the United States and elsewhere. Origin ...
contributor * Lawrence M. Breed – implementation of Iverson Notation (APL), co-developed APL\360,
Scientific Time Sharing Corporation Scientific Time Sharing Corporation (STSC) was a pioneering timesharing and consulting service company which offered APL from its datacenter in Bethesda, MD to users in the United States and Europe. History Scientific Time Sharing Corporation ( ...
cofounder *
Jack E. Bresenham Jack Elton Bresenham (born 11 October 1937, Clovis, New Mexico, United States, US) is a former professor of computer science. Biography Bresenham retired from 27 years of service at IBM as a Senior Technical Staff Member in 1987. He taught for 16 ...
– early computer-graphics contributions, including
Bresenham's algorithm Bresenham's line algorithm is a line drawing algorithm that determines the points of an ''n''-dimensional raster graphics, raster that should be selected in order to form a close approximation to a straight line between two points. It is commonly u ...
*
Sergey Brin Sergey Mikhailovich Brin (russian: link=no, Сергей Михайлович Брин; born August 21, 1973) is an American business magnate, computer scientist, and internet entrepreneur, who co-founded Google with Larry Page. Brin was th ...
– co-founder of
Google Google LLC () is an American Multinational corporation, multinational technology company focusing on Search Engine, search engine technology, online advertising, cloud computing, software, computer software, quantum computing, e-commerce, ar ...
* David J. Brown
unified memory architecture Unified may refer to: * The Unified, a wine symposium held in Sacramento, California, USA * ''Unified'', the official student newspaper of Canterbury Christ Church University * UNFD, an Australian record label * ''Unified'' (Sweet & Lynch album) ...
,
binary compatibility Binary-code compatibility (binary compatible or object-code-compatible) is a property of a computer system, meaning that it can run the same executable code, typically machine code for a general-purpose computer CPU, that another computer syste ...
*
Per Brinch Hansen Per Brinch Hansen (13 November 1938 – 31 July 2007) was a Danish-American computer scientist known for his work in operating systems, concurrent programming and parallel and distributed computing. Biography Early life and education Per B ...
(surname "Brinch Hansen") –
RC 4000 multiprogramming system The RC 4000 Multiprogramming System (also termed Monitor or RC 4000 depending on reference) is a discontinued operating system developed for the RC 4000 minicomputer in 1969. For clarity, this article mostly uses the term Monitor. Over ...
,
operating system kernels The kernel is a computer program at the core of a computer's operating system and generally has complete control over everything in the system. It is the portion of the operating system code that is always resident in memory and facilitates i ...
,
microkernel In computer science, a microkernel (often abbreviated as μ-kernel) is the near-minimum amount of software that can provide the mechanisms needed to implement an operating system (OS). These mechanisms include low-level address space management, ...
s, monitors,
concurrent programming Concurrent means happening at the same time. Concurrency, concurrent, or concurrence may refer to: Law * Concurrence, in jurisprudence, the need to prove both ''actus reus'' and ''mens rea'' * Concurring opinion (also called a "concurrence"), ...
,
Concurrent Pascal Concurrent Pascal is a programming language designed by Per Brinch Hansen for writing concurrent computing programs such as operating systems and real-time computing monitoring systems on shared memory computers. A separate language, ''Sequenti ...
,
distributed computing A distributed system is a system whose components are located on different networked computers, which communicate and coordinate their actions by passing messages to one another from any system. Distributed computing is a field of computer sci ...
& processes, parallel computing *
Sjaak Brinkkemper Jacobus Nicolaas (Sjaak) Brinkkemper (born Monnickendam, 18 January 1958) is a Dutch computer scientist, and Full Professor of organisation and information at the Department of Information and Computing Sciences of Utrecht University. Biography B ...
– methodology of product software development *
Fred Brooks Frederick Phillips Brooks Jr. (April 19, 1931 – November 17, 2022) was an American computer architect, software engineer, and computer scientist, best known for managing the development of IBM's System/360 family of computers and the O ...
System 360,
OS/360 OS/360, officially known as IBM System/360 Operating System, is a discontinued batch processing operating system developed by IBM for their then-new System/360 mainframe computer, announced in 1964; it was influenced by the earlier IBSYS/IBJOB ...
, ''
The Mythical Man-Month ''The Mythical Man-Month: Essays on Software Engineering'' is a book on software engineering and project management by Fred Brooks first published in 1975, with subsequent editions in 1982 and 1995. Its central theme is that adding manpower to a ...
'', ''
No Silver Bullet "No Silver Bullet—Essence and Accident in Software Engineering" is a widely discussed paper on software engineering written by Turing Award winner Fred Brooks in 1986. "No Silver Bullet—Essence and Accident in Software Engineering" Brooks argu ...
'' *
Rod Brooks Rodney Allen Brooks (born 30 December 1954) is an Australian roboticist, Fellow of the Australian Academy of Science, author, and robotics entrepreneur, most known for popularizing the actionist approach to robotics. He was a Panasonic Profe ...
* Margaret Burnettvisual programming languages, end-user software engineering, and gender-inclusive software * Michael ButlerEvent-B


C

*
Tracy Camp Tracy Kay Camp (born September 27, 1964) is an American computer scientist noted for her research on wireless networking. She is also noted for her leadership in broadening participation in computing. She was the co-chair of CRA-W from 2011 to ...
wireless computing *
Martin Campbell-Kelly Martin Campbell-Kelly is an Emeritus Professor at the University of Warwick who has specialised in the history of computing. Campbell-Kelly has served on the editorial board of the ''IEEE Annals of the History of Computing'' journal. He is a com ...
history of computing The history of computing is longer than the history of computing hardware and modern computing technology and includes the history of methods intended for pen and paper or for chalk and slate, with or without the aid of tables. Concrete devices ...
* Rosemary Candlin *
Rod Canion Joseph Rodney "Rod" Canion (born January 19, 1945) is an American computer scientist and businessman who co-founded Compaq Computer Corporation in 1982 and served as its first President and CEO. Biography A native of Houston, Canion graduated fr ...
- cofounder of
Compaq Computer Corporation Compaq Computer Corporation (sometimes abbreviated to CQ prior to a 2007 rebranding) was an American information technology company founded in 1982 that developed, sold, and supported computers and related products and services. Compaq produced ...
* Bryan Cantrill – invented
DTrace DTrace is a comprehensive dynamic tracing framework originally created by Sun Microsystems for troubleshooting kernel and application problems on production systems in real time. Originally developed for Solaris, it has since been released und ...
*
Luca Cardelli Luca Andrea Cardelli, Fellow of the Royal Society (FRS), is an Italian computer scientist who is a research professor at the University of Oxford in Oxford, UK. Cardelli is well known for his research in type theory and operational semantics. A ...
– * John Carmack – codeveloped
Doom Doom is another name for damnation. Doom may also refer to: People * Doom (professional wrestling), the tag team of Ron Simmons and Butch Reed * Daniel Doom (born 1934), Belgian cyclist * Debbie Doom (born 1963), American softball pitcher * ...
*
Edwin Catmull Edwin Earl "Ed" Catmull (born March 31, 1945) is an American computer scientist who is the co-founder of Pixar and was the President of Walt Disney Animation Studios. He has been honored for his contributions to 3D computer graphics, including th ...
computer graphics Computer graphics deals with generating images with the aid of computers. Today, computer graphics is a core technology in digital photography, film, video games, cell phone and computer displays, and many specialized applications. A great de ...
*
Vint Cerf Vinton Gray Cerf (; born June 23, 1943) is an American Internet pioneer and is recognized as one of " the fathers of the Internet", sharing this title with TCP/IP co-developer Bob Kahn. He has received honorary degrees and awards that include ...
– Internet,
TCP/IP The Internet protocol suite, commonly known as TCP/IP, is a framework for organizing the set of communication protocols used in the Internet and similar computer networks according to functional criteria. The foundational protocols in the suit ...
*
Gregory Chaitin Gregory John Chaitin ( ; born 25 June 1947) is an Argentine-American mathematician and computer scientist. Beginning in the late 1960s, Chaitin made contributions to algorithmic information theory and metamathematics, in particular a computer-t ...
*
Robert Cailliau Robert Cailliau (, born 26 January 1947) is a Belgian informatics engineer, computer scientist and author who proposed the first (pre-www) hypertext system for CERN in 1987 and collaborated with Tim Berners-Lee on the World Wide Web (jointly wi ...
– Belgian computer scientist * Zhou Chaochen
duration calculus Duration calculus (DC) is an interval logic for real-time systems. It was originally developed by Zhou Chaochen with the help of Anders P. Ravn and C. A. R. Hoare on the European ESPRIT Basic Research Action (BRA) ''ProCoS'' project on ''Provably ...
*
Peter Chen Peter Pin-Shan Chen (; born 3 January 1947) is a Taiwanese American computer scientist. He is a (retired) distinguished career scientist and faculty member at Carnegie Mellon University and Distinguished Chair Professor Emeritus at LSU. He is ...
entity-relationship model, data modeling, conceptual model *
Leonardo Chiariglione Leonardo Chiariglione () (born 30 January 1943 (age ) in Almese, Turin province, Piedmont, Italy) is an Italian engineer who has led the development of international technical standards for digital media. In particular, he was the chairman of t ...
– founder of
MPEG The Moving Picture Experts Group (MPEG) is an alliance of working groups established jointly by ISO and IEC that sets standards for media coding, including compression coding of audio, video, graphics, and genomic data; and transmission and f ...
*
Tracy Chou Tracy Chou (born 1987) is a software engineer and advocate for diversity in technology related fields. She previously worked at Pinterest and Quora with internship experience at Rocket Fuel, Google, and Facebook. She is best known for raising ...
– computer scientist and activist *
Alonzo Church Alonzo Church (June 14, 1903 – August 11, 1995) was an American mathematician, computer scientist, logician, philosopher, professor and editor who made major contributions to mathematical logic and the foundations of theoretical computer scien ...
– mathematics of combinators, lambda calculus *
Alberto Ciaramella Alberto Ciaramella (born 1947) is an Italian computer engineer and scientist. He is notable for extensive pioneering contributions in the field of speech technologies and applied natural language processing, most of them at CSELT and Loquendo, w ...
speech recognition Speech recognition is an interdisciplinary subfield of computer science and computational linguistics that develops methodologies and technologies that enable the recognition and translation of spoken language into text by computers with the ...
, patent informatics * Edmund M. Clarkemodel checking * John CockeRISC *
Edgar F. Codd Edgar Frank "Ted" Codd (19 August 1923 – 18 April 2003) was an English computer scientist who, while working for IBM, invented the relational model for database management, the theoretical basis for relational databases and relational databa ...
(1923–2003) – formulated the
database In computing, a database is an organized collection of data stored and accessed electronically. Small databases can be stored on a file system, while large databases are hosted on computer clusters or cloud storage. The design of databases s ...
relational model * Jacques Cohen – computer science professor * Ian Coldwater – computer security * Simon Coltoncomputational creativity *
Alain Colmerauer Alain Colmerauer (24 January 1941 – 12 May 2017) was a French computer scientist. He was a professor at Aix-Marseille University, and the creator of the logic programming language Prolog. Early life Alain Colmerauer was born on 24 January 194 ...
Prolog Prolog is a logic programming language associated with artificial intelligence and computational linguistics. Prolog has its roots in first-order logic, a formal logic, and unlike many other programming languages, Prolog is intended primarily ...
*
Douglas Comer Douglas Earl Comer is a professor of computer science at Purdue University, where he teaches courses on operating systems and computer networks. He has written numerous research papers and textbooks, and currently heads several networking resear ...
Xinu Xinu Is Not Unix (Xinu, a recursive acronym), is an operating system for embedded systems, originally developed by Douglas Comer for educational use at Purdue University in the 1980s. The name is both recursive, and is ''Unix'' spelled backwards ...
* Paul Justin ComptonRipple Down Rules * Richard W. ConwayCORC, CUPL, and
PL/C PL/C is an instructional dialect of the programming language PL/I, developed at the Department of Computer Science of Cornell University in the early 1970s in an effort headed by Professor Richard W. Conway and graduate student Thomas R. Wilcox ...
languages and dialects; programming textbooks * Gordon Cormack – co-invented dynamic Markov compression *
Stephen Cook Stephen Arthur Cook (born December 14, 1939) is an American-Canadian computer scientist and mathematician who has made significant contributions to the fields of complexity theory and proof complexity. He is a university professor at the Unive ...
NP-complete In computational complexity theory, a problem is NP-complete when: # it is a problem for which the correctness of each solution can be verified quickly (namely, in polynomial time) and a brute-force search algorithm can find a solution by trying ...
ness * James CooleyFast Fourier transform (FFT) * Danese Cooper
open-source software Open-source software (OSS) is computer software that is released under a license in which the copyright holder grants users the rights to use, study, change, and distribute the software and its source code to anyone and for any purpose. Op ...
*
Fernando J. Corbató Fernando José "Corby" Corbató (July 1, 1926 – July 12, 2019) was a prominent American computer scientist, notable as a pioneer in the development of time-sharing operating systems. Career Corbató was born on July 1, 1926 in Oakland, Califo ...
Compatible Time-Sharing System (CTSS),
Multics Multics ("Multiplexed Information and Computing Service") is an influential early time-sharing operating system based on the concept of a single-level memory.Dennis M. Ritchie, "The Evolution of the Unix Time-sharing System", Communications of ...
* Kit Cosper – open-source software * Patrick Cousotabstract interpretation * Ingemar Cox
digital watermarking A digital watermark is a kind of marker covertly embedded in a noise-tolerant signal such as audio, video or image data. It is typically used to identify ownership of the copyright of such signal. "Watermarking" is the process of hiding digital in ...
*
Seymour Cray Seymour Roger Cray (September 28, 1925 – October 5, 1996
) was an American
Cray Research Cray Inc., a subsidiary of Hewlett Packard Enterprise, is an American supercomputer manufacturer headquartered in Seattle, Washington. It also manufactures systems for data storage and analytics. Several Cray supercomputer systems are listed ...
, supercomputer * Nello Cristianini – machine learning, pattern analysis,
artificial intelligence Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech r ...
* Jon Crowcroft – networking * W. Bruce Croft * Glen Culler – interactive computing, computer graphics, high performance computing *
Haskell Curry Haskell Brooks Curry (; September 12, 1900 – September 1, 1982) was an American mathematician and logician. Curry is best known for his work in combinatory logic. While the initial concept of combinatory logic was based on a single paper by ...


D

*
Luigi Dadda Luigi Dadda (April 29, 1923 – October 26, 2012) was an Italian computer engineer, best known for the design of the Dadda multiplier and as one of the first researchers on modern computers in Italy. He was rector at the Politecnico di Mila ...
– designer of the
Dadda multiplier The Dadda multiplier is a hardware binary multiplier design invented by computer scientist Luigi Dadda in 1965. It uses a selection of full and half adders to sum the partial products in stages (the Dadda tree or Dadda reduction) until two numbers ...
*
Ole-Johan Dahl Ole-Johan Dahl (12 October 1931 – 29 June 2002) was a Norwegian computer scientist. Dahl was a professor of computer science at the University of Oslo and is considered to be one of the fathers of Simula and object-oriented programming along w ...
Simula,
object-oriented programming Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which can contain data and code. The data is in the form of fields (often known as attributes or ''properties''), and the code is in the form of ...
*
Ryan Dahl Ryan Dahl (born 1981) is an American software engineer who is best known for creating the Node.js JavaScript runtime as well as the Deno JavaScript/TypeScript runtime. Biography Dahl grew up in San Diego, California. His mother bought him an ...
– founder of
node.js Node.js is an open-source server environment. Node.js is cross-platform and runs on Windows, Linux, Unix, and macOS. Node.js is a back-end JavaScript runtime environment. Node.js runs on the V8 JavaScript Engine and executes JavaScript code o ...
project * Andries van Dam
computer graphics Computer graphics deals with generating images with the aid of computers. Today, computer graphics is a core technology in digital photography, film, video games, cell phone and computer displays, and many specialized applications. A great de ...
, hypertext *
Samir Das Samir R. Das is an Indian-American Stony Brook University professor who attended Jadavpur University and Indian Institute of Science. He was also associated with Indian Statistical Institute in Kolkata. He obtained his Ph.D. from the Georgi ...
Wireless Networks A wireless network is a computer network that uses wireless data connections between network nodes. Wireless networking is a method by which homes, telecommunications networks and business installations avoid the costly process of introducing c ...
, Mobile Computing,
Vehicular ad hoc network Vehicular ad hoc networks (VANETs) are created by applying the principles of mobile ad hoc networks (MANETs) – the spontaneous creation of a wireless network of mobile devices – to the domain of vehicles. VANETs were first mentioned and introd ...
,
Sensor Networks Wireless sensor networks (WSNs) refer to networks of spatially dispersed and dedicated sensors that monitor and record the physical conditions of the environment and forward the collected data to a central location. WSNs can measure environmental c ...
, Mesh networking,
Wireless ad hoc network A wireless ad hoc network (WANET) or mobile ad hoc network (MANET) is a decentralized type of wireless network. The network is ad hoc because it does not rely on a pre-existing infrastructure, such as routers in wired networks or access points ...
*
Neil Daswani Neil Daswani is a co-director of the Stanford Advanced Security Certification Program, and an expert in web application security. He is the lead author of the book "''Foundations of Security: What Every Programmer Needs To Know.''" In 2008, he c ...
computer security Computer security, cybersecurity (cyber security), or information technology security (IT security) is the protection of computer systems and networks from attack by malicious actors that may result in unauthorized information disclosure, t ...
, co-founder and co-director of Stanford Advanced Computer Security Program, co-founder of Dasient (acquired by Twitter), former chief information security of LifeLock and Symantec's Consumer Business Unit *
Christopher J. Date Chris Date (born 1941) is an independent author, lecturer, researcher, and consultant, specializing in relational database theory. Biography Chris Date attended High Wycombe Royal Grammar School (U.K.) from 1951 to 1958 and received his BA i ...
– proponent of
database In computing, a database is an organized collection of data stored and accessed electronically. Small databases can be stored on a file system, while large databases are hosted on computer clusters or cloud storage. The design of databases s ...
relational model * Jeff Dean
Bigtable Bigtable is a fully managed wide-column and key-value NoSQL database service for large analytical and operational workloads as part of the Google Cloud portfolio. History Bigtable development began in 2004.. It is now used by a number of Googl ...
,
MapReduce MapReduce is a programming model and an associated implementation for processing and generating big data sets with a parallel, distributed algorithm on a cluster. A MapReduce program is composed of a ''map'' procedure, which performs filtering ...
,
Spanner A wrench or spanner is a tool used to provide grip and mechanical advantage in applying torque to turn objects—usually rotary fasteners, such as nuts and bolts—or keep them from turning. In the UK, Ireland, Australia, and New Zeala ...
of Google *
Erik Demaine Erik D. Demaine (born February 28, 1981) is a professor of computer science at the Massachusetts Institute of Technology and a former child prodigy. Early life and education Demaine was born in Halifax, Nova Scotia, to artist sculptor Marti ...
computational origami *
Tom DeMarco Tom DeMarco (born August 20, 1940) is an American software engineer, author, and consultant on software engineering topics. He was an early developer of structured analysis in the 1970s. Early life and education Tom DeMarco was born in Hazle ...
*
Richard DeMillo Richard Allan DeMillo (born January 26, 1947) is an American computer scientist, educator and executive. He is currently Distinguished Professor of Computing and Professor of Management at the Georgia Institute of Technology. In 2009, he stepped ...
computer security Computer security, cybersecurity (cyber security), or information technology security (IT security) is the protection of computer systems and networks from attack by malicious actors that may result in unauthorized information disclosure, t ...
,
software engineering Software engineering is a systematic engineering approach to software development. A software engineer is a person who applies the principles of software engineering to design, develop, maintain, test, and evaluate computer software. The term '' ...
, educational technology *
Dorothy E. Denning Dorothy Elizabeth Denning (née Robling, born August 12, 1945) is a US-American information security researcher known for lattice-based access control (LBAC), intrusion detection systems (IDS), and other cyber security innovations. She publishe ...
– computer security * Peter J. Denning – identified the use of an
operating system An operating system (OS) is system software that manages computer hardware, software resources, and provides common services for computer programs. Time-sharing operating systems schedule tasks for efficient use of the system and may also i ...
's
working set Working set is a concept in computer science which defines the amount of memory that a process requires in a given time interval. Definition Peter Denning (1968) defines "the working set of information W(t, \tau) of a process at time t to be the ...
and balance set, President of ACM *
Michael Dertouzos Michael Leonidas Dertouzos ( el, Μιχαήλ Λεωνίδας Δερτούζος; November 5, 1936 – August 27, 2001) was a professor in the department of Electrical Engineering and Computer Science at the Massachusetts Institute of Technology ...
– Director of
Massachusetts Institute of Technology The Massachusetts Institute of Technology (MIT) is a private land-grant research university in Cambridge, Massachusetts. Established in 1861, MIT has played a key role in the development of modern technology and science, and is one of the ...
(MIT) Laboratory for Computer Science (LCS) from 1974 to 2001 * Alexander Dewdney *
Robert Dewar Robert Berriedale Keith Dewar (21 June 1945 – 30 June 2015) was an American computer scientist and educator. He helped to develop programming languages and compilers and was an outspoken advocate of freely licensed open-source software. He wa ...
IFIP WG 2.1 member,
ALGOL 68 ALGOL 68 (short for ''Algorithmic Language 1968'') is an imperative programming language that was conceived as a successor to the ALGOL 60 programming language, designed with the goal of a much wider scope of application and more rigorously d ...
, chairperson;
AdaCore A gnat () is any of many species of tiny flying insects in the dipterid suborder Nematocera, especially those in the families Mycetophilidae, Anisopodidae and Sciaridae. They can be both biting and non-biting. Most often they fly in large num ...
cofounder, president, CEO * Vinod DhamP5
Pentium Pentium is a brand used for a series of x86 architecture-compatible microprocessors produced by Intel. The original Pentium processor from which the brand took its name was first released on March 22, 1993. After that, the Pentium II and P ...
processor *
Jan Dietz Jean Leonardus Gerardus (Jan) Dietz (born 20 June 1945) is a Dutch Information systems researcher, Emeritus Professor of Information Systems Design, and part-time Professor of Enterprise Engineering at the Delft University of Technology, known for ...
(born 1945) ( decay constant) –
information systems An information system (IS) is a formal, sociotechnical, organizational system designed to collect, process, store, and distribute information. From a sociotechnical perspective, information systems are composed by four components: task, people ...
theory and ''Design & Engineering Methodology for Organizations'' *
Whitfield Diffie Bailey Whitfield 'Whit' Diffie (born June 5, 1944), ForMemRS, is an American cryptographer and mathematician and one of the pioneers of public-key cryptography along with Martin Hellman and Ralph Merkle. Diffie and Hellman's 1976 paper ''New Dir ...
(born 1944) (
linear response function A linear response function describes the input-output relationship of a signal transducer such as a radio turning electromagnetic waves into music or a neuron turning synaptic input into a response. Because of its many applications in information t ...
) – public key
cryptography Cryptography, or cryptology (from grc, , translit=kryptós "hidden, secret"; and ''graphein'', "to write", or ''-logia'', "study", respectively), is the practice and study of techniques for secure communication in the presence of adver ...
, Diffie–Hellman key exchange *
Edsger Dijkstra Edsger Wybe Dijkstra ( ; ; 11 May 1930 – 6 August 2002) was a Dutch computer scientist, programmer, software engineer, systems scientist, and science essayist. He received the 1972 Turing Award for fundamental contributions to developing progra ...
algorithm In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing ...
s,
Dijkstra's algorithm Dijkstra's algorithm ( ) is an algorithm for finding the shortest paths between nodes in a graph, which may represent, for example, road networks. It was conceived by computer scientist Edsger W. Dijkstra in 1956 and published three years ...
, Go To Statement Considered Harmful,
semaphore (programming) In computer science, a semaphore is a variable or abstract data type used to control access to a common resource by multiple threads and avoid critical section problems in a concurrent system such as a multitasking operating system. Semaph ...
, IFIP WG 2.1 member *
Matthew Dillon Matthew Dillon (born 1966) is an American software engineer known for Amiga software, contributions to FreeBSD and for starting and leading the DragonFly BSD project since 2003. Biography Dillon studied electronic engineering and computer scien ...
DragonFly BSD DragonFly BSD is a free and open-source Unix-like operating system forked from FreeBSD 4.8. Matthew Dillon, an Amiga developer in the late 1980s and early 1990s and FreeBSD developer between 1994 and 2003, began working on DragonFly BSD in ...
with LWKT,
vkernel A virtual kernel architecture (vkernel) is an operating system virtualisation paradigm where kernel code can be compiled to run in the user space, for example, to ease debugging of various kernel-level components, in addition to general-purpose v ...
OS-level virtualisation, file systems: HAMMER1,
HAMMER2 HAMMER2 is a successor to the HAMMER filesystem, redesigned from the ground up to support enhanced clustering. HAMMER2 supports online and batched deduplication, snapshots, directory entry indexing, multiple mountable filesystem roots, mounta ...
* Alan Dix – wrote important university level textbook on
human–computer interaction Human–computer interaction (HCI) is research in the design and the use of computer technology, which focuses on the interfaces between people (users) and computers. HCI researchers observe the ways humans interact with computers and design te ...
*
Jack Dongarra Jack Joseph Dongarra (born July 18, 1950) is an American computer scientist and mathematician. He is the American University Distinguished Professor of Computer Science in the Electrical Engineering and Computer Science Department at the Unive ...
linear algebra Linear algebra is the branch of mathematics concerning linear equations such as: :a_1x_1+\cdots +a_nx_n=b, linear maps such as: :(x_1, \ldots, x_n) \mapsto a_1x_1+\cdots +a_nx_n, and their representations in vector spaces and through matrices ...
high performance computing High-performance computing (HPC) uses supercomputers and computer clusters to solve advanced computation problems. Overview HPC integrates systems administration (including network and security knowledge) and parallel programming into a multi ...
(HCI) *
Marco Dorigo Marco Dorigo (born 26 August 1961, in Milan, Italy) is a research director for the Belgian Funds for Scientific Research and a co-director of ''IRIDIA'', the artificial intelligence lab of the Université Libre de Bruxelles. He received a PhD in ...
ant colony optimization In computer science and operations research, the ant colony optimization algorithm (ACO) is a probabilistic technique for solving computational problems which can be reduced to finding good paths through graphs. Artificial ants stand for multi ...
*
Paul Dourish Paul Dourish (born 1966) is a computer scientist best known for his work and research at the intersection of computer science and social science. Born in Scotland, he holds the Steckler Endowed Chair of Information and Computer Science at the ...
human computer interaction Humans (''Homo sapiens'') are the most abundant and widespread species of primate, characterized by bipedalism and exceptional cognitive skills due to a large and complex brain. This has enabled the development of advanced tools, culture, ...
*
Charles Stark Draper Charles Stark "Doc" Draper (October 2, 1901 – July 25, 1987) was an American scientist and engineer, known as the "father of inertial navigation". He was the founder and director of the Massachusetts Institute of Technology's Instrumentat ...
(1901–1987) – designer of Apollo Guidance Computer, "father of
inertial navigation An inertial navigation system (INS) is a navigation device that uses motion sensors ( accelerometers), rotation sensors ( gyroscopes) and a computer to continuously calculate by dead reckoning the position, the orientation, and the velocity ...
", MIT professor * Susan Dumaisinformation retrieval * Adam Dunkels
Contiki Contiki is an operating system for networked, memory-constrained systems with a focus on low-power wireless Internet of Things (IoT) devices. Extant uses for Contiki include systems for street lighting, sound monitoring for smart cities, radia ...
, lwIP, uIP,
protothread A protothread is a low-overhead mechanism for concurrent programming. Protothreads function as Call stack, stackless, lightweight Thread (computer science), threads, or coroutines, providing a blocking context cheaply using minimal memory per proto ...
s *
Jon Michael Dunn J. Michael Dunn (June 19, 1941 – April 5, 2021) was Oscar Ewing Professor Emeritus of Philosophy, Professor Emeritus of Informatics and Computer Science, was twice chair of the Philosophy Department, was Executive Associate Dean of the College ...
– founding dean of Indiana University School of Informatics, information based logics especially
relevance logic Relevance logic, also called relevant logic, is a kind of non-classical logic requiring the antecedent and consequent of implications to be relevantly related. They may be viewed as a family of substructural or modal logics. It is generally, but ...
* Schahram Dustdar – Distributed Systems, TU Wien, Austria


E

*
Peter Eades Peter D. Eades (born 8 January 1952) is an Australian computer scientist, an emeritus professor in the School of Information Technologies at the University of Sydney, known for his expertise in graph drawing. Eades received his bachelor's deg ...
graph drawing Graph drawing is an area of mathematics and computer science combining methods from geometric graph theory and information visualization to derive two-dimensional depictions of graphs arising from applications such as social network analysis, car ...
*
Annie Easley Annie Jean Easley (April 23, 1933 – June 25, 2011) was an American computer scientist, mathematician, and rocket scientist. She worked for the Lewis Research Center (now Glenn Research Center) of the National Aeronautics and Space Administrat ...
*
Wim Ebbinkhuijsen Wim Ebbinkhuijsen (born 24 December 1939, Amsterdam) is a retired Dutch computer scientist who is considered to be one of the "fathers of COBOL". in 1979 he initiated the ''International ISO COBOL Working Group''. From 1967 he was a member, and f ...
COBOL *
John Presper Eckert John Adam Presper Eckert Jr. (April 9, 1919 – June 3, 1995) was an American electrical engineer and computer pioneer. With John Mauchly, he designed the first general-purpose electronic digital computer (ENIAC), presented the first course in co ...
ENIAC ENIAC (; Electronic Numerical Integrator and Computer) was the first programmable, electronic, general-purpose digital computer, completed in 1945. There were other computers that had these features, but the ENIAC had all of them in one pac ...
*
Alan Edelman Alan Stuart Edelman (born June 1963) is an American mathematician and computer scientist. He is a professor of applied mathematics at the Massachusetts Institute of Technology (MIT) and a Principal Investigator at the MIT Computer Science and Ar ...
– Edelman's Law, stochastic operator, Interactive Supercomputing,
Julia (programming language) Julia is a high-level, dynamic programming language. Its features are well suited for numerical analysis and computational science. Distinctive aspects of Julia's design include a type system with parametric polymorphism in a dynamic program ...
cocreator, high performance computing, numerical computing *
Brendan Eich Brendan Eich (; born July 4, 1961) is an American computer programmer and technology executive. He created the JavaScript programming language and co-founded the Mozilla project, the Mozilla Foundation, and the Mozilla Corporation. He served ...
JavaScript JavaScript (), often abbreviated as JS, is a programming language that is one of the core technologies of the World Wide Web, alongside HTML and CSS. As of 2022, 98% of websites use JavaScript on the client side for webpage behavior, of ...
,
Mozilla Mozilla (stylized as moz://a) is a free software community founded in 1998 by members of Netscape. The Mozilla community uses, develops, spreads and supports Mozilla products, thereby promoting exclusively free software and open standards, w ...
* Philip Emeagwali – supercomputing * E. Allen Emerson – model checking * Douglas Engelbart – tiled
windows Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for ser ...
, hypertext,
computer mouse A computer mouse (plural mice, sometimes mouses) is a hand-held pointing device that detects two-dimensional motion relative to a surface. This motion is typically translated into the motion of a pointer on a display, which allows a smooth ...
* Barbara Engelhardt
latent variable model A latent variable model is a statistical model that relates a set of observable variables (also called ''manifest variables'' or ''indicators'') to a set of latent variables. It is assumed that the responses on the indicators or manifest variabl ...
s, genomics,
quantitative trait locus A quantitative trait locus (QTL) is a locus (section of DNA) that correlates with variation of a quantitative trait in the phenotype of a population of organisms. QTLs are mapped by identifying which molecular markers (such as SNPs or AFLPs) c ...
(QTL) *
David Eppstein David Arthur Eppstein (born 1963) is an American computer scientist and mathematician. He is a Distinguished Professor of computer science at the University of California, Irvine. He is known for his work in computational geometry, graph algo ...
*
Andrey Ershov Andrey Petrovich Yershov (russian: Андре́й Петро́вич Ершо́в; 19 April 1931, Moscow – 8 December 1988, Moscow) was a Soviet computer scientist, notable as a pioneer in systems programming and programming language researc ...
– languages ''ALPHA'', ''
Rapira : ''Rapira is also a name for the Soviet 100 mm anti-tank gun T-12 Rapira (russian: Рапира, rapier) is an educational procedural programming language developed in the Soviet Union and implemented on the Agat computer, PDP-11 clones (Electr ...
''; first Soviet
time-sharing In computing, time-sharing is the sharing of a computing resource among many users at the same time by means of multiprogramming and multi-tasking.DEC Timesharing (1965), by Peter Clark, The DEC Professional, Volume 1, Number 1 Its emergence ...
system ''AIST-0'', electronic publishing system ''RUBIN'', multiprocessing
workstation A workstation is a special computer designed for technical or scientific applications. Intended primarily to be used by a single user, they are commonly connected to a local area network and run multi-user operating systems. The term ''workstat ...
''MRAMOR'', IFIP WG 2.1 member, ''Aesthetics and the Human Factor in Programming'' *
Don Estridge Philip Donald Estridge (June 23, 1937 – August 2, 1985), known as Don Estridge, was an American computer engineer who led development of the original IBM Personal Computer (PC), and thus is known as the "father of the IBM PC". His decisions dra ...
(1937–1985) – led development of original
IBM Personal Computer The IBM Personal Computer (model 5150, commonly known as the IBM PC) is the first microcomputer released in the IBM PC model line and the basis for the IBM PC compatible de facto standard. Released on August 12, 1981, it was created by a team ...
(PC); known as "father of the IBM PC" *
Oren Etzioni Oren Etzioni (born 1964) is an American entrepreneur, Professor Emeritus of computer science, and founding CEO of the Allen Institute for Artificial Intelligence (AI2). On June 15, 2022, he announced that he will step down as CEO of AI2 effective ...
MetaCrawler MetaCrawler is a search engine. It is a registered trademark of InfoSpace and was created by Erik Selberg. It was originally a metasearch engine, as its name suggests. Throughout its lifetime it combined web search results from sources includin ...
,
Netbot Netbot was the first commercial Internet price comparison service. Founded by University of Washington Computer Science professors Oren Etzioni and Daniel S. Weld the company was funded by ARCH Venture Partners, Alta Partners and the Madrona ...
* Christopher Riche Evans * David C. Evans
computer graphics Computer graphics deals with generating images with the aid of computers. Today, computer graphics is a core technology in digital photography, film, video games, cell phone and computer displays, and many specialized applications. A great de ...
* Shimon Even


F

*
Scott Fahlman Scott Elliott Fahlman (born March 21, 1948) is a computer scientist and Professor Emeritus at Carnegie Mellon University's Language Technologies Institute and Computer Science Department. He is notable for early work on automated planning and s ...
*
Edward Feigenbaum Edward Albert Feigenbaum (born January 20, 1936) is a computer scientist working in the field of artificial intelligence, and joint winner of the 1994 ACM Turing Award. He is often called the "father of expert systems." Education and early life ...
intelligence Intelligence has been defined in many ways: the capacity for abstraction, logic, understanding, self-awareness, learning, emotional knowledge, reasoning, planning, creativity, critical thinking, and problem-solving. More generally, it can be des ...
*
Edward Felten Edward William Felten (born March 25, 1963) is the Robert E. Kahn Professor of Computer Science and Public Affairs at Princeton University, where he was also the Director of the Center for Information Technology Policy from 2007 to 2015 and fr ...
computer security Computer security, cybersecurity (cyber security), or information technology security (IT security) is the protection of computer systems and networks from attack by malicious actors that may result in unauthorized information disclosure, t ...
*
Tim Finin Timothy Wilking Finin (born 1949 in Walworth, Wisconsin) is the Willard and Lillian Hackerman Chair in Engineering and is a Professor of Computer Science and Electrical Engineering at the University of Maryland, Baltimore County (UMBC). His rese ...
*
Raphael Finkel Raphael Finkel (born 1951) is an American computer scientist and a professor at the University of Kentucky. He compiled the first version of the Jargon File. He is the author of ''An Operating Systems Vade Mecum'',Donald Firesmith Donald G. Firesmith (born June 14, 1952) is an American software engineer, consultant, and trainer at the Software Engineering Institute. Biography Firesmith received his B.A. in Mathematics and German from Linfield College in 1975 and his M.A ...
*
Gary William Flake Gary William Flake (born 1966 or 1967) was most recently the CTO of Search at Salesforce.com, which bought and shuttered Clipboard, Inc., of which he was the founder and CEO. Background Flake received his bachelor's degree in 1989 from Clemson U ...
*
Tommy Flowers Thomas Harold Flowers MBE (22 December 1905 – 28 October 1998) was an English engineer with the British General Post Office. During World War II, Flowers designed and built Colossus, the world's first programmable electronic computer, to help ...
Colossus computer Colossus was a set of computers developed by British codebreakers in the years 1943–1945 to help in the cryptanalysis of the Lorenz cipher. Colossus used thermionic valves (vacuum tubes) to perform Boolean and counting operations. Colossus ...
* Robert Floyd
NP-completeness In computational complexity theory, a problem is NP-complete when: # it is a problem for which the correctness of each solution can be verified quickly (namely, in polynomial time) and a brute-force search algorithm can find a solution by trying ...
*
Sally Floyd Sally Jean Floyd (May 20, 1950 – August 25, 2019) was an American computer scientist known for her work on computer networking. Formerly associated with the International Computer Science Institute in Berkeley, California, she retired in 2009 a ...
– Internet congestion control * Lawrence J. Fogel
evolutionary programming Evolutionary programming is one of the four major evolutionary algorithm paradigms. It is similar to genetic programming, but the structure of the program to be optimized is fixed, while its numerical parameters are allowed to evolve. It was fir ...
*
James D. Foley James David Foley (born July 20, 1942) is an American computer scientist and computer graphics researcher. He is a Professor Emeritus and held the Stephen Fleming Chair in Telecommunications in the School of Interactive Computing at Georgia In ...
* Ken Forbus * L. R. Ford, Jr. * Lance Fortnow *
Mahmoud Samir Fayed Mahmoud Samir Fayed (born December 29, 1986) is a computer programmer, known as the creator of the PWCT programming language. PWCT is a free open source visual programming language for software development. He also created or designed Ring. He i ...
PWCT PWCT is a free open source visual programming language for software development. Goal Programming Without Coding Technology (PWCT) is designed to be a general-purpose visual programming language that can be used for applications and systems de ...
,
Ring Ring may refer to: * Ring (jewellery), a round band, usually made of metal, worn as ornamental jewelry * To make a sound with a bell, and the sound made by a bell :(hence) to initiate a telephone connection Arts, entertainment and media Film and ...
* Martin Fowler * Robert France *
Herbert W. Franke Herbert W. Franke (14 May 1927 – 16 July 2022) was an Austrian scientist and writer. ''Die Zeit'' calls him "the most prominent German writing Science Fiction author". He is also one of the important early computer artists (and collectors), cr ...
*
Edward Fredkin Edward Fredkin (born October 2, 1934) is a distinguished career professor at Carnegie Mellon University (CMU), and an early pioneer of digital physics. Fredkin's primary contributions include work on reversible computing and cellular automata. ...
*
Yoav Freund Joab (Hebrew Modern: ''Yōʼav'', Tiberian: ''Yōʼāḇ'') the son of Zeruiah, was the nephew of King David and the commander of his army, according to the Hebrew Bible. Name The name Joab is, like many other Hebrew names, theophoric - der ...
* Daniel P. Friedman * Charlotte Froese Fischer – computational theoretical physics * Ping Fu * Xiaoming Fu *
Kunihiko Fukushima Kunihiko Fukushima ( Japanese: 福島 邦彦, born 16 March 1936) is a Japanese computer scientist, most noted for his work on artificial neural networks and deep learning. He is currently working part-time as a Senior Research Scientist at the F ...
neocognitron __NOTOC__ The neocognitron is a hierarchical, multilayered artificial neural network proposed by Kunihiko Fukushima in 1979. It has been used for Japanese handwritten character recognition and other pattern recognition tasks, and served as the ins ...
,
artificial neural network Artificial neural networks (ANNs), usually simply called neural networks (NNs) or neural nets, are computing systems inspired by the biological neural networks that constitute animal brains. An ANN is based on a collection of connected unit ...
s,
convolutional neural network In deep learning, a convolutional neural network (CNN, or ConvNet) is a class of artificial neural network (ANN), most commonly applied to analyze visual imagery. CNNs are also known as Shift Invariant or Space Invariant Artificial Neural Netwo ...
architecture,
unsupervised learning Unsupervised learning is a type of algorithm that learns patterns from untagged data. The hope is that through mimicry, which is an important mode of learning in people, the machine is forced to build a concise representation of its world and t ...
, deep learning * D. R. Fulkerson


G

* Richard P. GabrielMaclisp, Common Lisp,
Worse is Better Worse is better (also called the New Jersey style) is a term conceived by Richard P. Gabriel in an essay of the same name to describe the dynamics of software acceptance. It refers to the argument that software quality does not necessarily increa ...
,
League for Programming Freedom League for Programming Freedom (LPF) was founded in 1989 by Richard Stallman to unite free software developers as well as developers of proprietary software to fight against software patents and the extension of the scope of copyright. Their l ...
,
Lucid Inc. Lucid Incorporated was a Menlo Park, California, Menlo Park, California-based computer software development company. Founded by Richard P. Gabriel in 1984, it went bankrupt in 1994. History The first CEO was Tony Slocum, formerly of IntelliCorp ...
,
XEmacs XEmacs is a graphical- and console-based text editor which runs on almost any Unix-like operating system as well as Microsoft Windows. XEmacs is a fork, based on a version of GNU Emacs from the late 1980s. Any user can download, use, and modify X ...
*
Zvi Galil Zvi Galil ( he, צבי גליל; born June 26, 1947) is an Israeli-American computer scientist and mathematician. Galil served as the President of Tel Aviv University from 2007 through 2009. From 2010 to 2019, he was the dean of the Georgia Instit ...
*
Bernard Galler Bernard A. Galler ( in Chicago – in Ann Arbor, Michigan) was an American mathematician and computer scientist at the University of Michigan who was involved in the development of large-scale operating systems and computer languages includi ...
MAD (programming language) MAD (Michigan Algorithm Decoder) is a programming language and compiler for the IBM 704 and later the IBM 709, IBM 7090, IBM 7040, UNIVAC 1107, UNIVAC 1108, Philco 210-211, and eventually the IBM S/370 mainframe computers. Developed in 1959 at t ...
* Hector Garcia-Molina *
Michael Garey Michael Randolph Garey (born November 19, 1945) is a computer science researcher, and co-author (with David S. Johnson) of '' Computers and Intractability: A Guide to the Theory of NP-completeness''. He and Johnson received the 1979 Frederick W ...
NP-complete In computational complexity theory, a problem is NP-complete when: # it is a problem for which the correctness of each solution can be verified quickly (namely, in polynomial time) and a brute-force search algorithm can find a solution by trying ...
ness *
Hugo de Garis Hugo de Garis (born 1947, Sydney, Australia) is a retired researcher in the sub-field of artificial intelligence (AI) known as evolvable hardware. He became known in the 1990s for his research on the use of genetic algorithms to evolve artifici ...
*
Bill Gates William Henry Gates III (born October 28, 1955) is an American business magnate and philanthropist. He is a co-founder of Microsoft, along with his late childhood friend Paul Allen. During his career at Microsoft, Gates held the positions ...
– cofounder of
Microsoft Microsoft Corporation is an American multinational technology corporation producing computer software, consumer electronics, personal computers, and related services headquartered at the Microsoft Redmond campus located in Redmond, Washin ...
*
David Gelernter David Hillel Gelernter (born March 5, 1955) is an American computer scientist, artist, and writer. He is a professor of computer science at Yale University. Gelernter is known for contributions to parallel computation in the 1980s, and for book ...
* Lisa Gelobter – was the Chief Digital Service Officer for the U.S. Department of Education, founder of teQuitable *
Charles Geschke Charles Matthew "Chuck" Geschke (September 11, 1939 – April 16, 2021) was an American businessman and computer scientist best known for founding the graphics and publishing software company Adobe Inc. with John Warnock in 1982, and co-creati ...
*
Zoubin Ghahramani Zoubin Ghahramani FRS ( fa, زوبین قهرمانی; born 8 February 1970) is a British-Iranian researcher and Professor of Information Engineering at the University of Cambridge. He holds joint appointments at University College London and t ...
* Sanjay Ghemawat * Jeremy Gibbons
generic programming Generic programming is a style of computer programming in which algorithms are written in terms of types ''to-be-specified-later'' that are then ''instantiated'' when needed for specific types provided as parameters. This approach, pioneered b ...
,
functional programming In computer science, functional programming is a programming paradigm where programs are constructed by applying and composing functions. It is a declarative programming paradigm in which function definitions are trees of expressions that ...
,
formal methods In computer science, formal methods are mathematically rigorous techniques for the specification, development, and verification of software and hardware systems. The use of formal methods for software and hardware design is motivated by the exp ...
, computational biology, bioinformatics * Juan E. Gilberthuman-centered computing *
Lee Giles Clyde Lee Giles is an American computer scientist and the David Reese Professor at the College of Information Sciences and Technology at the Pennsylvania State University. He is also Graduate Faculty Professor of Computer Science and Engineering ...
CiteSeer CiteSeerX (formerly called CiteSeer) is a public search engine and digital library for scientific and academic papers, primarily in the fields of computer and information science. CiteSeer's goal is to improve the dissemination and access of ac ...
* Seymour Ginsburg
formal language In logic, mathematics, computer science, and linguistics, a formal language consists of words whose letters are taken from an alphabet and are well-formed according to a specific set of rules. The alphabet of a formal language consists of sy ...
s,
automata theory Automata theory is the study of abstract machines and automata, as well as the computational problems that can be solved using them. It is a theory in theoretical computer science. The word ''automata'' comes from the Greek word αὐτόματο ...
, AFL theory,
database theory Database theory encapsulates a broad range of topics related to the study and research of the theoretical realm of databases and database management systems. Theoretical aspects of data management include, among other areas, the foundations of q ...
* Robert L. Glass * Kurt Gödel
computability Computability is the ability to solve a problem in an effective manner. It is a key topic of the field of computability theory within mathematical logic and the theory of computation within computer science. The computability of a problem is clo ...
; not a computer scientist per se, but his work was invaluable in the field * Ashok Goel *
Joseph Goguen __NOTOC__ Joseph Amadee Goguen ( ; June 28, 1941 – July 3, 2006) was an American computer scientist. He was professor of Computer Science at the University of California and University of Oxford, and held research positions at IBM and SRI I ...
* Hardik Gohel * E. Mark Gold – ''
Language identification in the limit Language identification in the limit is a formal model for inductive inference of formal languages, mainly by computers (see machine learning and induction of regular languages). It was introduced by E. Mark Gold in a technical report and a journal ...
'' * Adele GoldbergSmalltalk * Andrew V. Goldberg
algorithm In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing ...
s, algorithm engineering *
Ian Goldberg Ian Avrum Goldberg (born March 31, 1973) is a cryptographer and cypherpunk. He is best known for breaking Netscape's implementation of SSL (with David Wagner), and for his role as chief scientist of Radialpoint (formerly Zero Knowledge Syste ...
– cryptographer, off-the-record messaging *
Judy Goldsmith Judy Goldsmith (born November 26, 1938) is an American feminist, academic, and activist. She served as president of the National Organization for Women (NOW) from 1982 to 1985, which is the largest feminist organization in the United States; prio ...
-
computational complexity theory In theoretical computer science and mathematics, computational complexity theory focuses on classifying computational problems according to their resource usage, and relating these classes to each other. A computational problem is a task solved ...
,
decision theory Decision theory (or the theory of choice; not to be confused with choice theory) is a branch of applied probability theory concerned with the theory of making decisions based on assigning probabilities to various factors and assigning numerical ...
, and
computer ethics Computer ethics is a part of practical philosophy concerned with how computing professionals should make decisions regarding professional and social conduct. Margaret Anne Pierce, a professor in the Department of Mathematics and Computers at G ...
*
Oded Goldreich Oded Goldreich ( he, עודד גולדרייך; b. 1957) is a professor of Computer Science at the Faculty of Mathematics and Computer Science of Weizmann Institute of Science, Israel. His research interests lie within the theory of computation ...
cryptography Cryptography, or cryptology (from grc, , translit=kryptós "hidden, secret"; and ''graphein'', "to write", or ''-logia'', "study", respectively), is the practice and study of techniques for secure communication in the presence of adver ...
,
computational complexity theory In theoretical computer science and mathematics, computational complexity theory focuses on classifying computational problems according to their resource usage, and relating these classes to each other. A computational problem is a task solved ...
*
Shafi Goldwasser en, Shafrira Goldwasser , name = Shafi Goldwasser , image = Shafi Goldwasser.JPG , caption = Shafi Goldwasser in 2010 , birth_place = New York City, New York, U.S. , birth_date = , death_date ...
cryptography Cryptography, or cryptology (from grc, , translit=kryptós "hidden, secret"; and ''graphein'', "to write", or ''-logia'', "study", respectively), is the practice and study of techniques for secure communication in the presence of adver ...
,
computational complexity theory In theoretical computer science and mathematics, computational complexity theory focuses on classifying computational problems according to their resource usage, and relating these classes to each other. A computational problem is a task solved ...
*
Gene Golub Gene Howard Golub (February 29, 1932 – November 16, 2007), was an American numerical analyst who taught at Stanford University as Fletcher Jones Professor of Computer Science and held a courtesy appointment in electrical engineering. Person ...
Matrix computation *
Martin Charles Golumbic Martin Charles Golumbic (born 1948) is a mathematician and computer scientist known for his research on perfect graphs, graph sandwich problems, compiler optimization, and spatial-temporal reasoning. He is a professor emeritus of computer science ...
algorithmic graph theory In mathematics, graph theory is the study of ''graphs'', which are mathematical structures used to model pairwise relations between objects. A graph in this context is made up of '' vertices'' (also called ''nodes'' or ''points'') which are conn ...
* Gastón Gonnet – cofounder of
Waterloo Maple Waterloo Maple Inc. is a Canadian software company, headquartered in Waterloo, Ontario. It operates under the trade name Maplesoft. It is best known as the manufacturer of the Maple computer algebra system, and MapleSim physical modeling and ...
Inc. *
Ian Goodfellow Ian J. Goodfellow (born ) is a computer scientist, engineer, and executive, most noted for his work on artificial neural networks and deep learning. He was previously employed as a research scientist at Google Brain and director of machine le ...
machine learning Machine learning (ML) is a field of inquiry devoted to understanding and building methods that 'learn', that is, methods that leverage data to improve performance on some set of tasks. It is seen as a part of artificial intelligence. Machine ...
*
James Gosling James Gosling (born May 19, 1955) is a Canadian computer scientist, best known as the founder and lead designer behind the Java programming language. Gosling was elected a member of the National Academy of Engineering in 2004 for the conception ...
– Network extensible Window System (
NeWS News is information about current events. This may be provided through many different media: word of mouth, printing, postal systems, broadcasting, electronic communication, or through the testimony of observers and witnesses to events. N ...
),
Java Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's mos ...
* Paul Graham
Viaweb Viaweb was a web-based application that allowed users to build and host their own online stores with little technical expertise using a web browser. The company was started in July 1995 by Paul Graham, Robert Morris (using the pseudonym "John ...
, On Lisp, Arc * Robert M. Graham – programming language compilers (GAT, Michigan Algorithm Decoder (MAD)), virtual memory architecture,
Multics Multics ("Multiplexed Information and Computing Service") is an influential early time-sharing operating system based on the concept of a single-level memory.Dennis M. Ritchie, "The Evolution of the Unix Time-sharing System", Communications of ...
* Susan L. Graham
compiler In computing, a compiler is a computer program that translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primarily used for programs tha ...
s, programming environments * Jim Gray
database In computing, a database is an organized collection of data stored and accessed electronically. Small databases can be stored on a file system, while large databases are hosted on computer clusters or cloud storage. The design of databases s ...
* Sheila Greibach
Greibach normal form In formal language theory, a context-free grammar is in Greibach normal form (GNF) if the right-hand sides of all production rules start with a terminal symbol, optionally followed by some variables. A non-strict form allows one exception to this f ...
, Abstract family of languages (AFL) theory *
David Gries David Gries (born April 26, 1939 in Flushing, Queens, New York) is an American computer scientist at Cornell University, United States mainly known for his books ''The Science of Programming'' (1981) and ''A Logical Approach to Discrete Math' ...
– ''The Science of Programming'', Interference freedom, Member Emeritus, IFIP WG 2.3 on Programming Methodology *
Ralph Griswold Ralph E. Griswold (May 19, 1934, Modesto, California, Modesto, California, CA – October 4, 2006, Tucson, Arizona, AZ) was a computer scientist known for his research into high-level programming languages and symbolic computation. His language c ...
SNOBOL SNOBOL ("StriNg Oriented and symBOlic Language") is a series of programming languages developed between 1962 and 1967 at AT&T Bell Laboratories by David J. Farber, Ralph E. Griswold and Ivan P. Polonsky, culminating in SNOBOL4. It was one of ...
* Bill GroppMessage Passing Interface, Portable, Extensible Toolkit for Scientific Computation (PETSc) *
Tom Gruber Thomas Robert Gruber (born 1959) is an American computer scientist, inventor, and entrepreneur with a focus on systems for knowledge sharing and collective intelligence. He did foundational work in ontology engineering and is well known for his ...
ontology engineering In computer science, information science and systems engineering, ontology engineering is a field which studies the methods and methodologies for building ontologies, which encompasses a representation, formal naming and definition of the categori ...
* Shelia Guberman
handwriting recognition Handwriting recognition (HWR), also known as handwritten text recognition (HTR), is the ability of a computer to receive and interpret intelligible handwritten input from sources such as paper documents, photographs, touch-screens and other de ...
* Ramanathan V. GuhaResource Description Framework (RDF), Netscape, RSS,
Epinions Epinions.com was a general consumer review site established in 1999. Epinions was acquired in 2003 by DealTime, later Shopping.com, which was acquired by eBay in 2005. Epinions users could access reviews about a variety of items. On 25 March 20 ...
* Neil J. Gunther
computer performance In computing, computer performance is the amount of useful work accomplished by a computer system. Outside of specific contexts, computer performance is estimated in terms of accuracy, efficiency and speed of executing computer program instructio ...
analysis,
capacity planning Capacity planning is the process of determining the production capacity needed by an organization to meet changing demands for its products. In the context of capacity planning, design capacity is the maximum amount of work that an organization ...
*
Jürg Gutknecht Jürg Gutknecht (born 3 January 1949 in Bülach) is a Swiss computer scientist. He developed, with Niklaus Wirth, the programming language Oberon and the corresponding operating system Oberon. Biography Jürg Gutknecht was full professor in th ...
– with
Niklaus Wirth Niklaus Emil Wirth (born 15 February 1934) is a Swiss computer scientist. He has designed several programming languages, including Pascal, and pioneered several classic topics in software engineering. In 1984, he won the Turing Award, generally ...
:
Lilith Lilith ( ; he, לִילִית, Līlīṯ) is a female figure in Mesopotamian and Judaic mythology, alternatively the first wife of Adam and supposedly the primordial she-demon. Lilith is cited as having been "banished" from the Garden of Ed ...
computer; Modula-2,
Oberon Oberon () is a king of the fairies in medieval and Renaissance literature. He is best known as a character in William Shakespeare's play ''A Midsummer Night's Dream'', in which he is King of the Fairies and spouse of Titania, Queen of the Fairi ...
,
Zonnon Zonnon is a general purpose programming language in the line or family of the preceding languages Pascal, Modula, and Oberon. Jürg Gutknecht is the author. Its conceptual model is based on objects, definitions, implementations, and modules. I ...
programming language A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language. The description of a programming ...
s; Oberon operating system *
Michael Guy Michael J. T. Guy (born 1 April 1943) is a British computer scientist and mathematician. He is known for early work on computer systems, such as the Phoenix system at the University of Cambridge, and for contributions to number theory, comput ...
Phoenix Phoenix most often refers to: * Phoenix (mythology), a legendary bird from ancient Greek folklore * Phoenix, Arizona, a city in the United States Phoenix may also refer to: Mythology Greek mythological figures * Phoenix (son of Amyntor), a ...
, work on
number theory Number theory (or arithmetic or higher arithmetic in older usage) is a branch of pure mathematics devoted primarily to the study of the integers and integer-valued functions. German mathematician Carl Friedrich Gauss (1777–1855) said, "Mat ...
, computer algebra, higher dimension
polyhedra In geometry, a polyhedron (plural polyhedra or polyhedrons; ) is a three-dimensional shape with flat polygonal faces, straight edges and sharp corners or vertices. A convex polyhedron is the convex hull of finitely many points, not all on ...
theory; with
John Horton Conway John Horton Conway (26 December 1937 – 11 April 2020) was an English mathematician active in the theory of finite groups, knot theory, number theory, combinatorial game theory and coding theory. He also made contributions to many branches ...
* Robert GriesemerGo language


H

* Nico Habermann – work on
operating system An operating system (OS) is system software that manages computer hardware, software resources, and provides common services for computer programs. Time-sharing operating systems schedule tasks for efficient use of the system and may also i ...
s,
software engineering Software engineering is a systematic engineering approach to software development. A software engineer is a person who applies the principles of software engineering to design, develop, maintain, test, and evaluate computer software. The term '' ...
, inter-process communication, process synchronization,
deadlock In concurrent computing, deadlock is any situation in which no member of some group of entities can proceed because each waits for another member, including itself, to take action, such as sending a message or, more commonly, releasing a loc ...
avoidance, software verification,
programming language A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language. The description of a programming ...
s: ALGOL 60,
BLISS BLISS is a system programming language developed at Carnegie Mellon University (CMU) by W. A. Wulf, D. B. Russell, and A. N. Habermann around 1970. It was perhaps the best known system language until C debuted a few years later. Since then, C b ...
, Pascal,
Ada Ada may refer to: Places Africa * Ada Foah, a town in Ghana * Ada (Ghana parliament constituency) * Ada, Osun, a town in Nigeria Asia * Ada, Urmia, a village in West Azerbaijan Province, Iran * Ada, Karaman, a village in Karaman Province, ...
*
Philipp Matthäus Hahn Philipp Matthäus Hahn (25 November 1739 in Scharnhausen (today part of Ostfildern), Duchy of Württemberg – 2 May 1790 in Echterdingen (today part of Leinfelden-Echterdingen)) was a German pastor, astronomer and inventor. In about 1763 he ...
– mechanical calculator * Eldon C. HallApollo Guidance Computer *
Wendy Hall Dame Wendy Hall (born 25 October 1952) is a British computer scientist. She is Regius Professor of Computer Science at the University of Southampton. Early life and education Wendy Hall was born in west London and educated at Ealing Grammar ...
*
Joseph Halpern Joseph Yehuda Halpern (born 1953) is an Israeli-American professor of computer science at Cornell University. Most of his research is on reasoning about knowledge and uncertainty. Biography Halpern graduated in 1975 from University of Toronto wi ...
* Margaret Hamilton – ultra-reliable software design *
Richard Hamming Richard Wesley Hamming (February 11, 1915 – January 7, 1998) was an American mathematician whose work had many implications for computer engineering and telecommunications. His contributions include the Hamming code (which makes use of a ...
Hamming code, founder of the Association for Computing Machinery * Jiawei Handata mining *
Frank Harary Frank Harary (March 11, 1921 – January 4, 2005) was an American mathematician, who specialized in graph theory. He was widely recognized as one of the "fathers" of modern graph theory. Harary was a master of clear exposition and, together with ...
graph theory In mathematics, graph theory is the study of ''graphs'', which are mathematical structures used to model pairwise relations between objects. A graph in this context is made up of '' vertices'' (also called ''nodes'' or ''points'') which are conn ...
*
Juris Hartmanis Juris Hartmanis (July 5, 1928 – July 29, 2022) was a Latvian-born American computer scientist and computational theorist who, with Richard E. Stearns, received the 1993 ACM Turing Award "in recognition of their seminal paper which establis ...
computational complexity theory In theoretical computer science and mathematics, computational complexity theory focuses on classifying computational problems according to their resource usage, and relating these classes to each other. A computational problem is a task solved ...
*
Johan Håstad Johan Torkel Håstad (; born 19 November 1960) is a Swedish theoretical computer scientist most known for his work on computational complexity theory. He was the recipient of the Gödel Prize in 1994 and 2011 and the ACM Doctoral Dissertation ...
computational complexity theory In theoretical computer science and mathematics, computational complexity theory focuses on classifying computational problems according to their resource usage, and relating these classes to each other. A computational problem is a task solved ...
*
Les Hatton Les Hatton (born 5 February 1948) is a British-born computer scientist and mathematician most notable for his work on failures and vulnerabilities in software controlled systems. He was educated at King's College, Cambridge 1967–1970 and the U ...
software failure and vulnerabilities * Igor Hawryszkiewycz, (born 1948) – American computer scientist and organizational theorist *
He Jifeng He Jifeng (, born August 1943) is a Chinese computer scientist. He Jifeng graduated from the mathematics department of Fudan University in 1965. From 1965 to 1985, he was an instructor at East China Normal University. During 1980–81, he was ...
provably correct systems *
Eric Hehner The given name Eric, Erich, Erikk, Erik, Erick, or Eirik is derived from the Old Norse name ''Eiríkr'' (or ''Eríkr'' in Old East Norse due to monophthongization). The first element, ''ei-'' may be derived from the older Proto-Norse ''* ain ...
predicative programming,
formal methods In computer science, formal methods are mathematically rigorous techniques for the specification, development, and verification of software and hardware systems. The use of formal methods for software and hardware design is motivated by the exp ...
,
quote notation In mathematics, the -adic number system for any prime number  extends the ordinary arithmetic of the rational numbers in a different way from the extension of the rational number system to the real and complex number systems. The extension ...
,
ALGOL ALGOL (; short for "Algorithmic Language") is a family of imperative computer programming languages originally developed in 1958. ALGOL heavily influenced many other languages and was the standard method for algorithm description used by the ...
*
Martin Hellman Martin Edward Hellman (born October 2, 1945) is an American cryptologist and mathematician, best known for his involvement with public key cryptography in cooperation with Whitfield Diffie and Ralph Merkle. Hellman is a longtime contributor to ...
– encryption *
Gernot Heiser Gernot Heiser (born 1957) is a Scientia Professor and the John Lions John Lions (19 January 1937 – 5 December 1998) was an Australian computer scientist. He is best known as the author of ''Lions' Commentary on UNIX 6th Edition, with ...
operating system An operating system (OS) is system software that manages computer hardware, software resources, and provides common services for computer programs. Time-sharing operating systems schedule tasks for efficient use of the system and may also i ...
teaching, research, commercialising, Open Kernel Labs,
OKL4 L4 is a family of second-generation microkernels, used to implement a variety of types of operating systems (OS), though mostly for Unix-like, ''Portable Operating System Interface'' (POSIX) compliant types. L4, like its predecessor microkernel ...
, Wombat *
James Hendler James Alexander Hendler (born April 2, 1957) is an artificial intelligence researcher at Rensselaer Polytechnic Institute, United States, and one of the originators of the Semantic Web. He is a Fellow of the National Academy of Public Administr ...
Semantic Web *
John L. Hennessy John Leroy Hennessy (born September 22, 1952) is an American computer scientist, academician and businessman who serves as Chairman of Alphabet Inc. Hennessy is one of the founders of MIPS Computer Systems Inc. as well as Atheros and served as t ...
computer architecture In computer engineering, computer architecture is a description of the structure of a computer system made from component parts. It can sometimes be a high-level description that ignores details of the implementation. At a more detailed level, the ...
*
Andrew Herbert Andrew James Herbert, OBE, FREng (born 1954) is a British computer scientist, formerly Chairman of Microsoft Research, for the Europe, Middle East and Africa region. Biography Herbert received a bachelor's of science degree in computationa ...
*
Carl Hewitt Carl Eddie Hewitt () is an American computer scientist who designed the Planner programming language for automated planningCarl Hewitt''PLANNER: A Language for Proving Theorems in Robots''IJCAI. 1969. and the actor model of concurrent computa ...
* Kelsey Hightower – open source, cloud computing *
Danny Hillis William Daniel "Danny" Hillis (born September 25, 1956) is an American inventor, entrepreneur, and computer scientist, who pioneered parallel computers and their use in artificial intelligence. He founded Thinking Machines Corporation, a parall ...
Connection Machine A Connection Machine (CM) is a member of a series of massively parallel supercomputers that grew out of doctoral research on alternatives to the traditional von Neumann architecture of computers by Danny Hillis at Massachusetts Institute of Techno ...
*
Geoffrey Hinton Geoffrey Everest Hinton One or more of the preceding sentences incorporates text from the royalsociety.org website where: (born 6 December 1947) is a British-Canadian cognitive psychologist and computer scientist, most noted for his work on a ...
*
Julia Hirschberg Julia Hirschberg is an American computer scientist noted for her research on computational linguistics and natural language processing. Hirschberg was elected a member of the National Academy of Engineering in 2017 for contributions to the us ...
* Tin Kam Ho
artificial intelligence Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech r ...
,
machine learning Machine learning (ML) is a field of inquiry devoted to understanding and building methods that 'learn', that is, methods that leverage data to improve performance on some set of tasks. It is seen as a part of artificial intelligence. Machine ...
* C. A. R. Hoare
logic Logic is the study of correct reasoning. It includes both formal and informal logic. Formal logic is the science of deductively valid inferences or of logical truths. It is a formal science investigating how conclusions follow from premise ...
, rigor,
communicating sequential processes In computer science, communicating sequential processes (CSP) is a formal language for describing patterns of interaction in concurrent systems. It is a member of the family of mathematical theories of concurrency known as process algebras, or ...
(CSP) * Louis Hodes (1934–2008) – Lisp,
pattern recognition Pattern recognition is the automated recognition of patterns and regularities in data. It has applications in statistical data analysis, signal processing, image analysis, information retrieval, bioinformatics, data compression, computer graphics ...
,
logic programming Logic programming is a programming paradigm which is largely based on formal logic. Any program written in a logic programming language is a set of sentences in logical form, expressing facts and rules about some problem domain. Major logic pro ...
,
cancer research Cancer research is research into cancer to identify causes and develop strategies for prevention, diagnosis, treatment, and cure. Cancer research ranges from epidemiology, molecular bioscience to the performance of clinical trials to evaluate and ...
*
Betty Holberton Frances Elizabeth Holberton (March 7, 1917 – December 8, 2001) was an American computer scientist who was one of the six original programmers of the first general-purpose electronic digital computer, ENIAC. The other five ENIAC programmers wer ...
ENIAC ENIAC (; Electronic Numerical Integrator and Computer) was the first programmable, electronic, general-purpose digital computer, completed in 1945. There were other computers that had these features, but the ENIAC had all of them in one pac ...
programmer, developed the first
Sort Merge Generator The Sort Merge Generator was an application developed by Betty Holberton in 1951 for the Univac I and is one of the first examples of using a computer to create a computer program. The input to the application was a specification of files and the ki ...
*
John Henry Holland John Henry Holland (February 2, 1929 – August 9, 2015) was an American scientist and Professor of psychology and Professor of electrical engineering and computer science at the University of Michigan, Ann Arbor. He was a pioneer in what became ...
genetic algorithms *
Herman Hollerith Herman Hollerith (February 29, 1860 – November 17, 1929) was a German-American statistician, inventor, and businessman who developed an electromechanical tabulating machine for punched cards to assist in summarizing information and, later, i ...
(1860–1929) – invented recording of data on a machine readable medium, using
punched card A punched card (also punch card or punched-card) is a piece of stiff paper that holds digital data represented by the presence or absence of holes in predefined positions. Punched cards were once common in data processing applications or to di ...
s *
Gerard Holzmann Gerard J. Holzmann (born 1951) is a Dutch-American computer scientist and researcher at Bell Labs and NASA, best known as the developer of the SPIN model checker. Biography Holzmann was born in Amsterdam, Netherlands and received an Engineer ...
software verification, logic model checking ( SPIN) *
John Hopcroft John Edward Hopcroft (born October 7, 1939) is an American theoretical computer scientist. His textbooks on theory of computation (also known as the Cinderella book) and data structures are regarded as standards in their fields. He is the IBM P ...
– compilers * Admiral
Grace Hopper Grace Brewster Hopper (; December 9, 1906 – January 1, 1992) was an American computer scientist, mathematician, and United States Navy rear admiral. One of the first programmers of the Harvard Mark I computer, she was a pioneer of compu ...
(1906–1992) – developed early compilers: FLOW-Matic, COBOL; worked on
UNIVAC UNIVAC (Universal Automatic Computer) was a line of electronic digital stored-program computers starting with the products of the Eckert–Mauchly Computer Corporation. Later the name was applied to a division of the Remington Rand company an ...
; gave speeches on computer history, where she gave out nano-seconds *
Eric Horvitz Eric Joel Horvitz () is an American computer scientist, and Technical Fellow at Microsoft, where he serves as the company's first Chief Scientific Officer. He was previously the director of Microsoft Research Labs, including research centers in Re ...
artificial intelligence Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech r ...
* Alston Householder * Paul Hudak (1952–2015) –
Haskell Haskell () is a general-purpose, statically-typed, purely functional programming language with type inference and lazy evaluation. Designed for teaching, research and industrial applications, Haskell has pioneered a number of programming lan ...
language design *
David A. Huffman David Albert Huffman (August 9, 1925 – October 7, 1999) was an American pioneer in computer science, known for his Huffman coding. He was also one of the pioneers in the field of mathematical origami. Education Huffman earned his bachelor's d ...
(1925–1999) –
Huffman coding In computer science and information theory, a Huffman code is a particular type of optimal prefix code that is commonly used for lossless data compression. The process of finding or using such a code proceeds by means of Huffman coding, an algo ...
, used in data compression * John Hughes – structuring computations with arrows; QuickCheck randomized program testing framework;
Haskell Haskell () is a general-purpose, statically-typed, purely functional programming language with type inference and lazy evaluation. Designed for teaching, research and industrial applications, Haskell has pioneered a number of programming lan ...
language design * Roger Hui – co-created J language *
Watts Humphrey Watts S. Humphrey (July 4, 1927 – October 28, 2010) was an American pioneer in software engineering who was called the "father of software quality." Biography Watts Humphrey (whose grandfather and father also had the same name) was born in ...
(1927–2010) – Personal Software Process (PSP), Software quality,
Team Software Process In combination with the personal software process (PSP), the team software process (TSP) provides a defined operational process framework that is designed to help teams of managers and engineers organize projects and produce software for products ...
(TSP)


I

*
Jean Ichbiah Jean David Ichbiah (25 March 1940 – 26 January 2007) was a French computer scientist and the initial chief designer (1977–1983) of Ada, a general-purpose, strongly typed programming language with certified validated compilers. Ea ...
Ada Ada may refer to: Places Africa * Ada Foah, a town in Ghana * Ada (Ghana parliament constituency) * Ada, Osun, a town in Nigeria Asia * Ada, Urmia, a village in West Azerbaijan Province, Iran * Ada, Karaman, a village in Karaman Province, ...
* Roberto Ierusalimschy
Lua (programming language) Lua ( ; from meaning '' moon'') is a lightweight, high-level, multi-paradigm programming language designed primarily for embedded use in applications. Lua is cross-platform, since the interpreter of compiled bytecode is written in ANSI C, ...
*
Dan Ingalls Daniel Henry Holmes Ingalls Jr. (born 1944) is a pioneer of object-oriented computer programming and the principal architect, designer and implementer of five generations of Smalltalk environments. He designed the bytecoded virtual machine that ...
Smalltalk,
BitBlt Bit blit (also written BITBLT, BIT BLT, BitBLT, Bit BLT, Bit Blt etc., which stands for ''bit block transfer'') is a data operation commonly used in computer graphics in which several bitmaps are combined into one using a ''Truth_table#Binary_opera ...
,
Lively Kernel The Lively Kernel is an open-source web programming environment. It supports desktop-style applications with rich graphics and direct manipulation abilities, but without the installation or upgrade troubles of conventional desktop applications. ...
* Mary Jane Irwin * Kenneth E. Iverson – APL, J


J

* Ivar Jacobson –
Unified Modeling Language The Unified Modeling Language (UML) is a general-purpose, developmental modeling language in the field of software engineering that is intended to provide a standard way to visualize the design of a system. The creation of UML was originally m ...
,
Object Management Group The Object Management Group (OMG) is a computer industry standards consortium. OMG Task Forces develop enterprise integration standards for a range of technologies. Business activities The goal of the OMG was a common portable and interoperab ...
* Anil K. Jain (computer scientist, born 1948), Anil K. Jain (born 1948) * Ramesh Jain * Jonathan James * David S. Johnson * Stephen C. Johnson * Cliff Jones (computer scientist), Cliff Jones –
Vienna Development Method The Vienna Development Method (VDM) is one of the longest-established formal methods for the development of computer-based systems. Originating in work done at the IBM Laboratory Vienna in the 1970s, it has grown to include a group of techniques ...
(VDM) * Michael I. Jordan * Mathai Joseph * Aravind K. Joshi * Bill Joy (born 1954) – Sun Microsystems, Berkeley Software Distribution, BSD UNIX, vi, C shell, csh * Dan Jurafsky – natural language processing


K

* William Kahan – numerical analysis * Robert E. Kahn –
TCP/IP The Internet protocol suite, commonly known as TCP/IP, is a framework for organizing the set of communication protocols used in the Internet and similar computer networks according to functional criteria. The foundational protocols in the suit ...
* Avinash Kak – digital image processing * Poul-Henning Kamp – invented GBDE, FreeBSD Jails, Varnish cache * David Karger * Richard Karp –
NP-complete In computational complexity theory, a problem is NP-complete when: # it is a problem for which the correctness of each solution can be verified quickly (namely, in polynomial time) and a brute-force search algorithm can find a solution by trying ...
ness * Narendra Karmarkar – Karmarkar's algorithm * Marek Karpinski – NP optimization problems * Ted Kaehler – Smalltalk, Squeak, HyperCard * Alan Kay – Dynabook, Smalltalk, overlapping
windows Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for ser ...
* Neeraj Kayal – AKS primality test * Manolis Kellis – computational biology * John George Kemeny – the language BASIC * Ken Kennedy (computer scientist), Ken Kennedy – compiling for parallel and vector machines * Brian Kernighan (born 1942) – Unix, the 'k' in
AWK AWK (''awk'') is a domain-specific language designed for text processing and typically used as a data extraction and reporting tool. Like sed and grep, it is a filter, and is a standard feature of most Unix-like operating systems. The AWK lang ...
* Carl Kesselman – grid computing * Gregor Kiczales – CLOS, reflection (computer science), reflection, aspect-oriented programming * Peter T. Kirstein – Internet * Stephen Cole Kleene – Kleene closure, recursion theory * Dan Klein – Natural language processing, Machine translation * Leonard Kleinrock – ARPANET, queueing theory, packet switching, hierarchical routing * Donald Knuth – ''The Art of Computer Programming'', MIX/MMIX, TeX, literate programming * Andrew Koenig (programmer), Andrew Koenig – C++ * Daphne Koller – Artificial intelligence, bayesian network * Michael Kölling – BlueJ * Andrey Nikolaevich Kolmogorov – algorithmic complexity theory * Janet L. Kolodner – case-based reasoning * David Korn (computer scientist), David Korn – KornShell * Cornelis H. A. Koster, Kees Koster –
ALGOL 68 ALGOL 68 (short for ''Algorithmic Language 1968'') is an imperative programming language that was conceived as a successor to the ALGOL 60 programming language, designed with the goal of a much wider scope of application and more rigorously d ...
* Robert Kowalski –
logic programming Logic programming is a programming paradigm which is largely based on formal logic. Any program written in a logic programming language is a set of sentences in logical form, expressing facts and rules about some problem domain. Major logic pro ...
* John Koza – genetic programming * John Krogstie – SEQUAL framework * Joseph Kruskal – Kruskal's algorithm * Maarja Kruusmaa – underwater roboticist * Thomas E. Kurtz (born 1928) – BASIC programming language; Dartmouth College computer professor


L

* Richard E. Ladner * Monica S. Lam * Leslie Lamport –
algorithm In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing ...
s for
distributed computing A distributed system is a system whose components are located on different networked computers, which communicate and coordinate their actions by passing messages to one another from any system. Distributed computing is a field of computer sci ...
, LaTeX * Butler Lampson – SDS 940, founding member Xerox PARC, Xerox Alto, Turing Award * Peter Landin – ISWIM, J operator, SECD machine, off-side rule, syntactic sugar,
ALGOL ALGOL (; short for "Algorithmic Language") is a family of imperative computer programming languages originally developed in 1958. ALGOL heavily influenced many other languages and was the standard method for algorithm description used by the ...
, IFIP WG 2.1 member, advanced lambda calculus to model
programming language A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language. The description of a programming ...
s (aided
functional programming In computer science, functional programming is a programming paradigm where programs are constructed by applying and composing functions. It is a declarative programming paradigm in which function definitions are trees of expressions that ...
), denotational semantics * Tom Lane (computer scientist), Tom Lane – Independent JPEG Group, PostgreSQL, Portable Network Graphics (PNG) * Börje Langefors * Chris Lattner – creator of Swift (programming language) and LLVM compiler infrastructure * Steve Lawrence (computer scientist), Steve Lawrence * Edward D. Lazowska * Joshua Lederberg * Manny M Lehman * Charles E. Leiserson – cache-oblivious algorithms, provably good Cilk#Work-stealing, work-stealing, coauthor of Introduction to Algorithms * Douglas Lenat –
artificial intelligence Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech r ...
, Cyc * Yann LeCun * Rasmus Lerdorf – PHP * Max Levchin – Gausebeck–Levchin test and PayPal * Leonid Levin –
computational complexity theory In theoretical computer science and mathematics, computational complexity theory focuses on classifying computational problems according to their resource usage, and relating these classes to each other. A computational problem is a task solved ...
* Kevin Leyton-Brown –
artificial intelligence Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech r ...
* J.C.R. Licklider * David Liddle * Jochen Liedtke –
microkernel In computer science, a microkernel (often abbreviated as μ-kernel) is the near-minimum amount of software that can provide the mechanisms needed to implement an operating system (OS). These mechanisms include low-level address space management, ...
operating system An operating system (OS) is system software that manages computer hardware, software resources, and provides common services for computer programs. Time-sharing operating systems schedule tasks for efficient use of the system and may also i ...
s Eumel, L3 microkernel, L3, L4 microkernel family, L4 * John Lions – Lions' Commentary on UNIX 6th Edition, with Source Code (Lions Book) * Charles H. Lindsey – IFIP WG 2.1 member, ''Revised Report on
ALGOL 68 ALGOL 68 (short for ''Algorithmic Language 1968'') is an imperative programming language that was conceived as a successor to the ALGOL 60 programming language, designed with the goal of a much wider scope of application and more rigorously d ...
'' * Richard J. Lipton –
computational complexity theory In theoretical computer science and mathematics, computational complexity theory focuses on classifying computational problems according to their resource usage, and relating these classes to each other. A computational problem is a task solved ...
* Barbara Liskov –
programming language A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language. The description of a programming ...
s * Yanhong Annie Liu –
programming language A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language. The description of a programming ...
s,
algorithm In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing ...
s, program design, program optimization, software systems, optimizing, analysis, and transformations, intelligent systems,
distributed computing A distributed system is a system whose components are located on different networked computers, which communicate and coordinate their actions by passing messages to one another from any system. Distributed computing is a field of computer sci ...
,
computer security Computer security, cybersecurity (cyber security), or information technology security (IT security) is the protection of computer systems and networks from attack by malicious actors that may result in unauthorized information disclosure, t ...
, IFIP WG 2.1 member * Darrell Long – computer data storage,
computer security Computer security, cybersecurity (cyber security), or information technology security (IT security) is the protection of computer systems and networks from attack by malicious actors that may result in unauthorized information disclosure, t ...
* Patricia D. Lopez – broadening participation in computing * Gillian Lovegrove * Ada Lovelace – first programmer * David Luckham – Lisp, Automated theorem proving, Stanford Pascal Verifier, Complex event processing, Rational Software cofounder (
Ada Ada may refer to: Places Africa * Ada Foah, a town in Ghana * Ada (Ghana parliament constituency) * Ada, Osun, a town in Nigeria Asia * Ada, Urmia, a village in West Azerbaijan Province, Iran * Ada, Karaman, a village in Karaman Province, ...
compiler In computing, a compiler is a computer program that translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primarily used for programs tha ...
) * Eugene Luks * Nancy Lynch


M

* Nadia Magnenat Thalmann –
computer graphics Computer graphics deals with generating images with the aid of computers. Today, computer graphics is a core technology in digital photography, film, video games, cell phone and computer displays, and many specialized applications. A great de ...
, virtual actor * Tom Maibaum * Zohar Manna – fuzzy logic * James Martin (author), James Martin – Information engineering (field), information engineering * Robert C. Martin (Uncle Bob) – software craftsmanship * John Mashey * Yuri Matiyasevich – solving Hilbert's tenth problem * Yukihiro Matsumoto – Ruby (programming language) *
John Mauchly John William Mauchly (August 30, 1907 – January 8, 1980) was an American physicist who, along with J. Presper Eckert, designed ENIAC, the first general-purpose electronic digital computer, as well as EDVAC, BINAC and UNIVAC I, the first ...
(1907–1980) – designed
ENIAC ENIAC (; Electronic Numerical Integrator and Computer) was the first programmable, electronic, general-purpose digital computer, completed in 1945. There were other computers that had these features, but the ENIAC had all of them in one pac ...
, first general-purpose electronic digital computer, as well as EDVAC, BINAC and UNIVAC I, the first commercial computer; worked with
Jean Bartik Jean Bartik ( Betty Jean Jennings; December 27, 1924 – March 23, 2011) was one of the original six programmers for the ENIAC computer. Bartik studied mathematics in school then began work at the University of Pennsylvania, first manually ca ...
on
ENIAC ENIAC (; Electronic Numerical Integrator and Computer) was the first programmable, electronic, general-purpose digital computer, completed in 1945. There were other computers that had these features, but the ENIAC had all of them in one pac ...
and Grace Murray Hopper on
UNIVAC UNIVAC (Universal Automatic Computer) was a line of electronic digital stored-program computers starting with the products of the Eckert–Mauchly Computer Corporation. Later the name was applied to a division of the Remington Rand company an ...
* Ujjwal Maulik (1965–) Multi-objective Clustering and Bioinformatics * Derek McAuley – ubiquitous computing,
computer architecture In computer engineering, computer architecture is a description of the structure of a computer system made from component parts. It can sometimes be a high-level description that ignores details of the implementation. At a more detailed level, the ...
, networking * John McCarthy (computer scientist), John McCarthy – Lisp (programming language),
ALGOL ALGOL (; short for "Algorithmic Language") is a family of imperative computer programming languages originally developed in 1958. ALGOL heavily influenced many other languages and was the standard method for algorithm description used by the ...
, IFIP WG 2.1 member,
artificial intelligence Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech r ...
* Andrew McCallum * Douglas McIlroy – Macro (computer science), macros, pipes, Unix philosophy * Chris McKinstry –
artificial intelligence Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech r ...
, Mindpixel * Marshall Kirk McKusick – BSD, Berkeley Fast File System * Lambert Meertens –
ALGOL 68 ALGOL 68 (short for ''Algorithmic Language 1968'') is an imperative programming language that was conceived as a successor to the ALGOL 60 programming language, designed with the goal of a much wider scope of application and more rigorously d ...
, IFIP WG 2.1 member, ABC (programming language) * Kurt Mehlhorn – algorithms, data structures, Library of Efficient Data types and Algorithms, LEDA * Dora Metcalf – entrepreneur, engineer and mathematician * Bertrand Meyer – Eiffel (programming language) * Silvio Micali –
cryptography Cryptography, or cryptology (from grc, , translit=kryptós "hidden, secret"; and ''graphein'', "to write", or ''-logia'', "study", respectively), is the practice and study of techniques for secure communication in the presence of adver ...
* Robin Milner – ML (programming language) * Jack Minker – database logic * Marvin Minsky –
artificial intelligence Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech r ...
, perceptrons, Society of Mind * James G. Mitchell – WATFIV, WATFOR compiler, Mesa (programming language), Spring (operating system), ARM architecture family, ARM architecture * Tom M. Mitchell * Arvind (computer scientist), Arvind Mithal – formal verification of large digital systems, developing dynamic dataflow architectures, parallel computing
programming language A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language. The description of a programming ...
s (Id, pH), compiling on parallel machines * Paul Mockapetris – Domain Name System (DNS) * Cleve Moler – numerical analysis, MATLAB * Faron Moller – concurrency theory * John P. Moon – inventor, Apple Inc. * Charles H. Moore – Forth (programming language), Forth language * Edward F. Moore – Moore machine * Gordon Moore – Moore's law * J Strother Moore – string searching, ACL2 theorem prover * Roger Moore (computer scientist), Roger Moore – co-developed APL\360, created IPSANET, co-founded I. P. Sharp Associates * Hans Moravec – robotics * Carroll Morgan (computer scientist), Carroll Morgan –
formal methods In computer science, formal methods are mathematically rigorous techniques for the specification, development, and verification of software and hardware systems. The use of formal methods for software and hardware design is motivated by the exp ...
* Robert Tappan Morris – Morris worm * Joel Moses – Macsyma * Rajeev Motwani – randomized algorithm * Oleg A. Mukhanov – quantum computing developer, co-founder and CTO of SeeQC * Stephen Muggleton – Inductive Logic Programming * Klaus-Robert Müller – machine learning, artificial intelligence * Alan Mycroft – programming languages * Brad A. Myers – human-computer interaction * M.M. Musharaf Hussain – Parallel Computing and Multicore Superscalar Processor


N

* Mihai Nadin – anticipation research * Makoto Nagao – machine translation, natural language processing, digital library * Frieder Nake – pioneered computer arts * Bonnie Nardi – human–computer interaction * Peter Naur (1928–2016) – Backus–Naur form (BNF), ALGOL 60, IFIP WG 2.1 member * Roger Needham – computer security * James G. Nell – Generalised Enterprise Reference Architecture and Methodology (GERAM) * Greg Nelson (computer scientist), Greg Nelson (1953–2015) – satisfiability modulo theories, extended static checking, program verification, Modula-3 committee, ''Simplify'' theorem prover in ESC/Java * Bernard de Neumann – massively parallel autonomous cellular processor, software engineering research * Klara Dan von Neumann (1911–1963) – early computers,
ENIAC ENIAC (; Electronic Numerical Integrator and Computer) was the first programmable, electronic, general-purpose digital computer, completed in 1945. There were other computers that had these features, but the ENIAC had all of them in one pac ...
programmer and control designer * John von Neumann (1903–1957) – early computers, Von Neumann architecture, von Neumann machine, set theory, functional analysis, mathematics pioneer, linear programming, quantum mechanics * Allen Newell –
artificial intelligence Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech r ...
, ''Computer Structures'' * Max Newman –
Colossus computer Colossus was a set of computers developed by British codebreakers in the years 1943–1945 to help in the cryptanalysis of the Lorenz cipher. Colossus used thermionic valves (vacuum tubes) to perform Boolean and counting operations. Colossus ...
, MADM * Andrew Ng –
artificial intelligence Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech r ...
,
machine learning Machine learning (ML) is a field of inquiry devoted to understanding and building methods that 'learn', that is, methods that leverage data to improve performance on some set of tasks. It is seen as a part of artificial intelligence. Machine ...
, robotics * Nils John Nilsson (1933–2019) –
artificial intelligence Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech r ...
* G.M. Nijssen – Nijssen's Information Analysis Methodology (NIAM) object-role modeling * Tobias Nipkow – proof assistance * Maurice Nivat – theoretical computer science, ''Theoretical Computer Science (journal), Theoretical Computer Science'' journal,
ALGOL ALGOL (; short for "Algorithmic Language") is a family of imperative computer programming languages originally developed in 1958. ALGOL heavily influenced many other languages and was the standard method for algorithm description used by the ...
, IFIP WG 2.1 member * Phiwa Nkambule – Fintech,
artificial intelligence Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech r ...
,
machine learning Machine learning (ML) is a field of inquiry devoted to understanding and building methods that 'learn', that is, methods that leverage data to improve performance on some set of tasks. It is seen as a part of artificial intelligence. Machine ...
, robotics * Jerre Noe – computerized banking * Peter Nordin –
artificial intelligence Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech r ...
, genetic programming, evolutionary robotics * Donald Norman – user interfaces, usability * Peter Norvig –
artificial intelligence Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech r ...
, Director of Research at Google * George Novacky – University of Pittsburgh: assistant department chair, senior lecturer in computer science, assistant dean of CAS for undergraduate studies * Kristen Nygaard – Simula,
object-oriented programming Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which can contain data and code. The data is in the form of fields (often known as attributes or ''properties''), and the code is in the form of ...


O

* Martin Odersky – Scala (programming language), Scala programming language * Peter O'Hearn – separation logic, bunched logic, Infer Static Analyzer * T. William Olle – Ferranti Mercury * Steve Omohundro * Severo Ornstein * John O'Sullivan (engineer), John O'Sullivan – Wi-Fi * John Ousterhout – Tcl programming language * Mark Overmars – video game programming * Susan Owicki – interference freedom


P

* Larry Page – co-founder of
Google Google LLC () is an American Multinational corporation, multinational technology company focusing on Search Engine, search engine technology, online advertising, cloud computing, software, computer software, quantum computing, e-commerce, ar ...
* Sankar Pal * Paritosh Pandya * Christos Papadimitriou * David Park (computer scientist), David Park (1935–1990) – first Lisp implementation, expert in fairness, program schemas, bisimulation in concurrent computing * David Parnas – information hiding, modular programming * DJ Patil – former Chief Data Scientist of United States * Yale Patt – Instruction-level parallelism, speculative architectures * David Patterson (computer scientist), David Patterson – reduced instruction set computer (RISC), RISC-V, redundant arrays of inexpensive disks (RAID), Berkeley Computer cluster, Network of Workstations (NOW) * Mike Paterson –
algorithm In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing ...
s, analysis of algorithms (complexity) * Mihai Pătrașcu (computer scientist), Mihai Pătraşcu – data structures * Lawrence Paulson – ML (programming language), ML * Randy Pausch (1960–2008) –
human–computer interaction Human–computer interaction (HCI) is research in the design and the use of computer technology, which focuses on the interfaces between people (users) and computers. HCI researchers observe the ways humans interact with computers and design te ...
, Carnegie professor, "Really Achieving Your Childhood Dreams, Last Lecture" * Juan Pavón – software agents * Judea Pearl –
artificial intelligence Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech r ...
, search algorithms * Alan Perlis – ''Programming Pearls'' * Radia Perlman – spanning tree protocol * Pier Giorgio Perotto – computer designer at Olivetti, designer of the Programma 101 programmable calculator * Rózsa Péter – recursive function theory * Simon Peyton Jones –
functional programming In computer science, functional programming is a programming paradigm where programs are constructed by applying and composing functions. It is a declarative programming paradigm in which function definitions are trees of expressions that ...
* Kathy Pham – data, artificial intelligence, civic technology, healthcare, ethics * Roberto Pieraccini – speech technologist, engineering director at Google * Gordon Plotkin * Amir Pnueli – temporal logic * Willem van der Poel – computer graphics, robotics, geographic information systems, imaging, multimedia, virtual environments, games * Cicely Popplewell (1920–1995) – British software engineer in 1960s * Emil Post – mathematics * Jon Postel – Internet * Franco Preparata – computer engineering, computational geometry, parallel algorithms, computational biology * William H. Press – numerical algorithms


R

* Rapelang Rabana * Grzegorz Rozenberg – natural computing,
automata theory Automata theory is the study of abstract machines and automata, as well as the computational problems that can be solved using them. It is a theory in theoretical computer science. The word ''automata'' comes from the Greek word αὐτόματο ...
, Graph rewriting, graph transformations and Petri nets, concurrent systems * Michael O. Rabin – nondeterministic machine * Dragomir R. Radev – natural language processing, information retrieval * T. V. Raman – accessibility, Emacspeak * Brian Randell – ALGOL 60, software fault tolerance, dependability, pre-1950 history of computing hardware * Anders P. Ravn – Duration Calculus * Raj Reddy –
artificial intelligence Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech r ...
* David P. Reed * Trygve Reenskaug – model–view–controller (MVC) software architecture pattern * John C. Reynolds – continuations, definitional interpreters, defunctionalization, Forsythe, Gedanken language, intersection types, System F, polymorphic lambda calculus, relational parametricity, separation logic,
ALGOL ALGOL (; short for "Algorithmic Language") is a family of imperative computer programming languages originally developed in 1958. ALGOL heavily influenced many other languages and was the standard method for algorithm description used by the ...
* Joyce K. Reynolds – Internet * Reinder van de Riet – Editor: ''Europe of Data and Knowledge Engineering'', COLOR-X event modeling language * Bernard Richards – medical informatics * Martin Richards (computer scientist), Martin Richards – BCPL * Adam Riese * C. J. van Rijsbergen * Dennis Ritchie – C (programming language), Unix * Ron Rivest – RSA, MD5, RC4 * Ken Robinson (computer scientist), Ken Robinson –
formal methods In computer science, formal methods are mathematically rigorous techniques for the specification, development, and verification of software and hardware systems. The use of formal methods for software and hardware design is motivated by the exp ...
* Colette Rolland – REMORA methodology, meta modelling * John Romero – codeveloped
Doom Doom is another name for damnation. Doom may also refer to: People * Doom (professional wrestling), the tag team of Ron Simmons and Butch Reed * Daniel Doom (born 1934), Belgian cyclist * Debbie Doom (born 1963), American softball pitcher * ...
* Azriel Rosenfeld * Douglas T. Ross – Automatically Programmed Tools (APT (programming language), APT), Computer-aided design, structured analysis and design technique, ALGOL X * Guido van Rossum – Python (programming language) * M. A. Rothman – UEFI * Winston W. Royce – waterfall model * Rudy Rucker – mathematician, writer, educator * Steven Rudich – complexity theory, cryptography * Jeff Rulifson * James Rumbaugh –
Unified Modeling Language The Unified Modeling Language (UML) is a general-purpose, developmental modeling language in the field of software engineering that is intended to provide a standard way to visualize the design of a system. The creation of UML was originally m ...
,
Object Management Group The Object Management Group (OMG) is a computer industry standards consortium. OMG Task Forces develop enterprise integration standards for a range of technologies. Business activities The goal of the OMG was a common portable and interoperab ...
* Peter Ružička – Slovak computer scientist and mathematician


S

* George Sadowsky * Umar Saif * Gerard Salton – information retrieval * Jean E. Sammet –
programming language A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language. The description of a programming ...
s * Claude Sammut –
artificial intelligence Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech r ...
researcher * Carl Sassenrath –
operating system An operating system (OS) is system software that manages computer hardware, software resources, and provides common services for computer programs. Time-sharing operating systems schedule tasks for efficient use of the system and may also i ...
s,
programming language A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language. The description of a programming ...
s, Amiga, REBOL * Mahadev Satyanarayanan – file systems, distributed systems, mobile computing, pervasive computing * Walter Savitch – discovery of complexity class NL (complexity), NL, Savitch's theorem, natural language processing, mathematical linguistics * Jonathan Schaeffer * Wilhelm Schickard – one of the first calculating machines * Jürgen Schmidhuber – artificial intelligence, deep learning, artificial neural networks, recurrent neural networks, Gödel machine, artificial curiosity, meta-learning * Steve Schneider (computer scientist), Steve Schneider –
formal methods In computer science, formal methods are mathematically rigorous techniques for the specification, development, and verification of software and hardware systems. The use of formal methods for software and hardware design is motivated by the exp ...
, security * Bruce Schneier – cryptography, security * Fred B. Schneider – concurrent and distributed computing * Sarita Schoenebeck — human–computer interaction * Glenda Schroeder – command-line shell, e-mail * Bernhard Schölkopf – machine learning, artificial intelligence * Dana Scott – domain theory * Michael L. Scott –
programming language A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language. The description of a programming ...
s,
algorithm In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing ...
s,
distributed computing A distributed system is a system whose components are located on different networked computers, which communicate and coordinate their actions by passing messages to one another from any system. Distributed computing is a field of computer sci ...
* Robert Sedgewick (computer scientist), Robert Sedgewick – algorithms, data structures * Ravi Sethi – compilers, 2nd Compilers: Principles, Techniques, and Tools#Second edition, Dragon Book * Nigel Shadbolt * Adi Shamir – RSA, cryptanalysis * Claude Shannon – information theory * David E. Shaw – computational finance, computational biochemistry, parallel architectures * Cliff Shaw – systems programmer, artificial intelligence * Scott Shenker – networking * Shashi Shekhar (scientist), Shashi Shekhar - Spatial Computing * Ben Shneiderman –
human–computer interaction Human–computer interaction (HCI) is research in the design and the use of computer technology, which focuses on the interfaces between people (users) and computers. HCI researchers observe the ways humans interact with computers and design te ...
, information visualization * Edward H. Shortliffe – MYCIN (medical diagnostic expert system) * Daniel Siewiorek – electronic design automation, Reliability (computer networking), reliability computing, Context awareness, context aware mobile computing, Wearable computer, wearable computing, computer-aided design, rapid prototyping, fault tolerance * Joseph Sifakis – model checking * Herbert A. Simon –
artificial intelligence Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech r ...
* Munindar P. Singh – multiagent systems,
software engineering Software engineering is a systematic engineering approach to software development. A software engineer is a person who applies the principles of software engineering to design, develop, maintain, test, and evaluate computer software. The term '' ...
, artificial intelligence, social networks * Ramesh Sitaraman – helped build Akamai's high performance network * Daniel Sleator – splay tree, amortized analysis * Aaron Sloman – artificial intelligence and cognitive science * Arne Sølvberg – information modelling * Brian Cantwell Smith – reflection (computer science), 3lisp * David Canfield Smith – invented Icon (computing), interface icons, programming by demonstration, developed graphical user interface, Xerox Star; PARC (company), Xerox PARC researcher, cofounded Dest Systems, Cognition * Steven Spewak – enterprise architecture planning * Carol Spradling * Robert Sproull * Rohini Kesavan Srihari – information retrieval, text analytics, multilingual text mining * Sargur Srihari –
pattern recognition Pattern recognition is the automated recognition of patterns and regularities in data. It has applications in statistical data analysis, signal processing, image analysis, information retrieval, bioinformatics, data compression, computer graphics ...
,
machine learning Machine learning (ML) is a field of inquiry devoted to understanding and building methods that 'learn', that is, methods that leverage data to improve performance on some set of tasks. It is seen as a part of artificial intelligence. Machine ...
, computational criminology, CEDAR-FOX * Maciej Stachowiak – GNOME, Safari (web browser), Safari, WebKit * Richard Stallman (born 1953) – GNU Project * Ronald Stamper * Richard E. Stearns –
computational complexity theory In theoretical computer science and mathematics, computational complexity theory focuses on classifying computational problems according to their resource usage, and relating these classes to each other. A computational problem is a task solved ...
* Guy L. Steele, Jr. – Scheme (programming language), Scheme, Common Lisp * Thomas Sterling (computing), Thomas Sterling – creator of Beowulf (computing), Beowulf clusters * Alexander Stepanov –
generic programming Generic programming is a style of computer programming in which algorithms are written in terms of types ''to-be-specified-later'' that are then ''instantiated'' when needed for specific types provided as parameters. This approach, pioneered b ...
* W. Richard Stevens (1951–1999) – author of books, including ''TCP/IP Illustrated'' and ''Advanced Programming in the Unix Environment'' * Larry Stockmeyer – computational complexity, distributed computing * Salvatore Stolfo – computer security, machine learning * Michael Stonebraker – relational database practice and theory * Olaf Storaasli (computing), Olaf Storaasli – finite element machine,
linear algebra Linear algebra is the branch of mathematics concerning linear equations such as: :a_1x_1+\cdots +a_nx_n=b, linear maps such as: :(x_1, \ldots, x_n) \mapsto a_1x_1+\cdots +a_nx_n, and their representations in vector spaces and through matrices ...
,
high performance computing High-performance computing (HPC) uses supercomputers and computer clusters to solve advanced computation problems. Overview HPC integrates systems administration (including network and security knowledge) and parallel programming into a multi ...
* Christopher Strachey – denotational semantics * Volker Strassen – Strassen algorithm, matrix multiplication, Schönhage–Strassen algorithm, integer multiplication, Solovay–Strassen primality test * Bjarne Stroustrup – C++ * Madhu Sudan –
computational complexity theory In theoretical computer science and mathematics, computational complexity theory focuses on classifying computational problems according to their resource usage, and relating these classes to each other. A computational problem is a task solved ...
, coding theory * Gerald Jay Sussman – Scheme (programming language), Scheme * Bert Sutherland – graphics, Internet * Ivan Sutherland – graphics * Latanya Sweeney – Data privacy and algorithmic fairness * Mario Szegedy – complexity theory, quantum computing


T

* Parisa Tabriz – Google Director of Engineering, also known as the Security Princess * Roberto Tamassia – computational geometry,
computer security Computer security, cybersecurity (cyber security), or information technology security (IT security) is the protection of computer systems and networks from attack by malicious actors that may result in unauthorized information disclosure, t ...
* Andrew S. Tanenbaum –
operating system An operating system (OS) is system software that manages computer hardware, software resources, and provides common services for computer programs. Time-sharing operating systems schedule tasks for efficient use of the system and may also i ...
s, MINIX * Austin Tate – Artificial Intelligence Applications, Automated planning and scheduling, AI Planning, Virtual Worlds * Bernhard Thalheim – conceptual modelling foundation * Éva Tardos * Gábor Tardos * Robert Tarjan – splay tree * Valerie Taylor (computer scientist), Valerie Taylor * Mario Tchou – Italian engineer, of Chinese descent, leader of Olivetti Elea project * Jaime Teevan * Shang-Hua Teng – analysis of algorithms * Larry Tesler – human–computer interaction, graphical user interface, Apple Macintosh * Avie Tevanian – Mach kernel team, NeXT, Mac OS X * Charles P. Thacker – Xerox Alto, Microsoft Research * Daniel Thalmann –
computer graphics Computer graphics deals with generating images with the aid of computers. Today, computer graphics is a core technology in digital photography, film, video games, cell phone and computer displays, and many specialized applications. A great de ...
, virtual actor * Ken Thompson (computer programmer), Ken Thompson – Unix * Sebastian Thrun – AI researcher, pioneered autonomous driving * Walter F. Tichy – RCS * Seinosuke Toda – computation complexity, recipient of 1998 Gödel Prize * Linus Torvalds – Linux kernel, Git * Leonardo Torres y Quevedo (1852–1936) – invented El Ajedrecista (''the chess player'') in 1912, a true automaton built to play chess without human guidance. In his work ''Essays on Automatics'' (1913), introduced the idea of floating-point arithmetic. In 1920, built an early electromechanical device of the Analytical Engine. * Godfried Toussaint – computational geometry, computational music theory * Gloria Townsend * Edwin E. Tozer – business information systems * Joseph F Traub – computational complexity of scientific problems * John V. Tucker – computability theory * John Tukey – founder of FFT algorithm, box plot, exploratory data analysis and Coining the term 'bit' * Alan Turing (1912–1954) – British computing pioneer, Turing machine,
algorithm In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing ...
s, cryptology,
computer architecture In computer engineering, computer architecture is a description of the structure of a computer system made from component parts. It can sometimes be a high-level description that ignores details of the implementation. At a more detailed level, the ...
* David Turner (computer scientist), David Turner – SASL (programming language), SASL, Kent Recursive Calculator, Miranda (programming language), Miranda, IFIP WG 2.1 member * Murray Turoff – computer-mediated communication


U

* Jeffrey D. Ullman – compilers, databases, complexity theory


V

* Leslie Valiant –
computational complexity theory In theoretical computer science and mathematics, computational complexity theory focuses on classifying computational problems according to their resource usage, and relating these classes to each other. A computational problem is a task solved ...
, computational learning theory * Vladimir Vapnik –
pattern recognition Pattern recognition is the automated recognition of patterns and regularities in data. It has applications in statistical data analysis, signal processing, image analysis, information retrieval, bioinformatics, data compression, computer graphics ...
, computational learning theory * Moshe Vardi – professor of computer science at Rice University * Dorothy Vaughan * Umesh Vazirani * Manuela M. Veloso * François Vernadat – enterprise modeling * Richard Veryard – enterprise modeling * Sergiy Vilkomir – software testing, RC/DC * Paul Vitanyi – Kolmogorov complexity, Information distance, Normalized compression distance, Normalized Google distance * Andrew Viterbi – Viterbi algorithm * Jeffrey Scott Vitter – Auxiliary memory, external memory algorithms, compressed data structures, data compression,
database In computing, a database is an organized collection of data stored and accessed electronically. Small databases can be stored on a file system, while large databases are hosted on computer clusters or cloud storage. The design of databases s ...
s * Paul Vixie – DNS, BIND, PAIX, Internet Software Consortium, MAPS, DNSBL


W

* Eiiti Wada – ALGOL N, IFIP WG 2.1 member, Japanese Industrial Standards (JIS) X 0208, 0212, Happy Hacking Keyboard * David A. Wagner, David Wagner – security,
cryptography Cryptography, or cryptology (from grc, , translit=kryptós "hidden, secret"; and ''graphein'', "to write", or ''-logia'', "study", respectively), is the practice and study of techniques for secure communication in the presence of adver ...
* David Waltz * James Z. Wang * Steve Ward (computer scientist), Steve Ward * Manfred K. Warmuth – computational learning theory * David H. D. Warren – artificial intelligence, AI,
logic programming Logic programming is a programming paradigm which is largely based on formal logic. Any program written in a logic programming language is a set of sentences in logical form, expressing facts and rules about some problem domain. Major logic pro ...
,
Prolog Prolog is a logic programming language associated with artificial intelligence and computational linguistics. Prolog has its roots in first-order logic, a formal logic, and unlike many other programming languages, Prolog is intended primarily ...
, Warren Abstract Machine (WAM) * Kevin Warwick – artificial intelligence * Jan Weglarz * Philip Wadler –
functional programming In computer science, functional programming is a programming paradigm where programs are constructed by applying and composing functions. It is a declarative programming paradigm in which function definitions are trees of expressions that ...
,
Haskell Haskell () is a general-purpose, statically-typed, purely functional programming language with type inference and lazy evaluation. Designed for teaching, research and industrial applications, Haskell has pioneered a number of programming lan ...
, Monad (functional programming), Monad,
Java Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's mos ...
, Logic * Peter Wegner –
object-oriented programming Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which can contain data and code. The data is in the form of fields (often known as attributes or ''properties''), and the code is in the form of ...
, interaction (computer science) * Joseph Henry Wegstein – ALGOL 58, ALGOL 60, IFIP WG 2.1 member, data processing technical standards, fingerprint analysis * Peter J. Weinberger – programming language design, the 'w' in
AWK AWK (''awk'') is a domain-specific language designed for text processing and typically used as a data extraction and reporting tool. Like sed and grep, it is a filter, and is a standard feature of most Unix-like operating systems. The AWK lang ...
* Mark Weiser – ubiquitous computing * Joseph Weizenbaum – artificial intelligence, ELIZA * David Wheeler (computer scientist), David Wheeler – EDSAC, subroutines * Franklin H. Westervelt – use of computers in engineering education, conversational use of computers,
Michigan Terminal System The Michigan Terminal System (MTS) is one of the first time-sharing computer operating systems.. Developed in 1967 at the University of Michigan for use on IBM S/360-67, S/370 and compatible mainframe computers, it was developed and used by a con ...
(MTS), ARPANET, distance learning * Steve Whittaker –
human computer interaction Humans (''Homo sapiens'') are the most abundant and widespread species of primate, characterized by bipedalism and exceptional cognitive skills due to a large and complex brain. This has enabled the development of advanced tools, culture, ...
, computer support for cooperative work, social media * Jennifer Widom – nontraditional data management * Gio Wiederhold – database management systems * Norbert Wiener – Cybernetics * Adriaan van Wijngaarden – Dutch pioneer; ARRA,
ALGOL ALGOL (; short for "Algorithmic Language") is a family of imperative computer programming languages originally developed in 1958. ALGOL heavily influenced many other languages and was the standard method for algorithm description used by the ...
, IFIP WG 2.1 member * Mary Allen Wilkes – LINC developer, assembler-linker designer * Maurice Vincent Wilkes – microprogramming, EDSAC * Yorick Wilks – computational linguistics, artificial intelligence * James H. Wilkinson – numerical analysis * Sophie Wilson – ARM architecture family, ARM architecture * Shmuel Winograd – Coppersmith–Winograd algorithm * Terry Winograd – artificial intelligence, SHRDLU * Patrick Winston – artificial intelligence *
Niklaus Wirth Niklaus Emil Wirth (born 15 February 1934) is a Swiss computer scientist. He has designed several programming languages, including Pascal, and pioneered several classic topics in software engineering. In 1984, he won the Turing Award, generally ...
– ALGOL W, IFIP WG 2.1 member, Pascal, Modula,
Oberon Oberon () is a king of the fairies in medieval and Renaissance literature. He is best known as a character in William Shakespeare's play ''A Midsummer Night's Dream'', in which he is King of the Fairies and spouse of Titania, Queen of the Fairi ...
* Neil Wiseman – computer graphics * Dennis E. Wisnosky – Integrated Computer-Aided Manufacturing (ICAM), IDEF * Stephen Wolfram – Mathematica * Mike Woodger – Pilot ACE, ALGOL 60, Ada (programming language) * Philip Woodward – ambiguity function, sinc function, Dirac comb, comb operator, rep operator, ALGOL 68-R * Beatrice Helen Worsley – wrote the first PhD dissertation involving modern computers; was one of the people who wrote Transcode * Steve Wozniak – engineered first generation personal computers at Apple Computer * Jie Wu – computer networks * William Wulf –
BLISS BLISS is a system programming language developed at Carnegie Mellon University (CMU) by W. A. Wulf, D. B. Russell, and A. N. Habermann around 1970. It was perhaps the best known system language until C debuted a few years later. Since then, C b ...
system programming language + optimizing compiler, Hydra (operating system), Hydra
operating system An operating system (OS) is system software that manages computer hardware, software resources, and provides common services for computer programs. Time-sharing operating systems schedule tasks for efficient use of the system and may also i ...
, Tartan Laboratories


Y

* Mihalis Yannakakis * Andrew Chi-Chih Yao * John Yen * Nobuo Yoneda – Yoneda lemma, Yoneda product,
ALGOL ALGOL (; short for "Algorithmic Language") is a family of imperative computer programming languages originally developed in 1958. ALGOL heavily influenced many other languages and was the standard method for algorithm description used by the ...
, IFIP WG 2.1 member * Edward Yourdon – Structured Systems Analysis and Design Method * Moti Yung


Z

* Lotfi Zadeh – fuzzy logic * Hans Zantema – termination analysis * Arif Zaman – pseudo-random number generator * Stanley Zdonik — database management systems * Hussein Zedan –
formal methods In computer science, formal methods are mathematically rigorous techniques for the specification, development, and verification of software and hardware systems. The use of formal methods for software and hardware design is motivated by the exp ...
and real-time systems * Shlomo Zilberstein – artificial intelligence, anytime algorithms, automated planning and scheduling, automated planning, and decentralized partially observable Markov decision process, POMDPs * Jill Zimmerman – James M. Beall Professor of Mathematics and Computer Science at Goucher College * Konrad Zuse – German pioneer of hardware and software


See also

* List of computing people * List of important publications in computer science * List of Jewish American computer scientists * List of members of the National Academy of Sciences (computer and information sciences) * List of pioneers in computer science * List of programmers * List of programming language researchers * List of Russian IT developers * List of Slovenian computer scientists * List of Indian computer scientists


References


External links


CiteSeer list of the most cited authors in computer science
{{DEFAULTSORT:Computer Scientists, List Of Lists of computer scientists, Computer scientists, * Lists of people by occupation