Charles Carroll Morgan | |
---|---|
Born | 1952 (age 70–71) |
Nationality | American |
Education | Ph.D.; University of Sydney |
Known for | Formal methods |
Scientific career | |
Fields | Computer science |
Institutions | Oxford University Computing Laboratory University of New South Wales |
Website | www |
Charles Carroll Morgan (born 1952) is an American computer scientist who moved to Australia in his early teens. He completed his education there (high school, university, several years in industry), including a Doctor of Philosophy (Ph.D.) degree from the University of Sydney, and then moved to the United Kingdom in the early 1980s. In 2000, he returned to Australia.
During the 1980s and 1990s, Morgan was based at the Oxford University Computing Laboratory in England as a researcher and lecturer working in the area of formal methods, and was a Fellow of Pembroke College. Having been influenced by the Z notation of Jean-Raymond Abrial, he authored Programming from Specifications as an attempt to combine the high-level specification aspects of Z, with the rigorous computer program derivation methods of Edsger W. Dijkstra. His treatment concentrated on elementary program constructs to make the material accessible to undergraduates in their early years. [1] Some of the ideas there were later incorporated as elements of the B-Method by Abrial, when Abrial returned in Oxford in the last half of the 1980s.
Together with Annabelle McIver, Morgan later authored Abstraction, Refinement and Proof for Probabilistic Systems, in which the same themes were pursued for probabilistic programs. [2] His most recent text (with five others) is The Science of Quantitative Information Flow, in which the same themes were extended further, to program security. [3]
Morgan is now a professor in the School of Computer Science and Engineering at the University of New South Wales, [4] a Senior Principal Researcher at Trustworthy Systems [5] and an Honorary Professor at Macquarie University, [6] all three in Australia. His main research interests are probabilistic models for computer security and concurrency. He is a known proponent of a formalized approach to program development called the refinement calculus. [1] He has authored many papers.
He is involved with developing international standards in programming and informatics, as an active member of several International Federation for Information Processing (IFIP) working groups, [7] including IFIP Working Group 2.1 on Algorithmic Languages and Calculi, [8] which specified, maintains, and supports the programming languages ALGOL 60 and ALGOL 68. [9]
Niklaus Emil Wirth 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 recognized as the highest distinction in computer science, for developing a sequence of innovative computer languages.
Nobuo Yoneda was a Japanese mathematician and computer scientist.
David A. Turner is a British computer scientist. He is best known for designing and implementing three programming languages, including the first for functional programming based on lazy evaluation, combinator graph reduction, and polymorphic types: SASL (1972), Kent Recursive Calculator (KRC) (1981), and the commercially supported Miranda (1985). Miranda had a strong influence on the later Haskell.
Eric "Rick" C. R. Hehner is a Canadian computer scientist. He was born in Ottawa. He studied mathematics and physics at Carleton University, graduating with a Bachelor of Science (B.Sc.) in 1969. He studied computer science at the University of Toronto, graduating with a Master of Science (M.Sc.) in 1970, and a Doctor of Philosophy (Ph.D.) in 1974. He then joined the faculty there, becoming a full professor in 1983. He became the Bell University Chair in software engineering in 2001, and retired in 2012.
John Edward Lancelot Peck was the first permanent Head of Department of Computer Science at the University of British Columbia (UBC). He remained the Head of Department from 1969 to 1977.
Barry James Mailloux obtained his Master of Science (M.Sc.) in numerical analysis in 1963. From 1966, he studied at Amsterdam's Mathematisch Centrum under Adriaan van Wijngaarden, earning a Doctor of Philosophy (Ph.D.) in 1968.
Cornelis Hermanus Antonius "Kees" Koster was a Dutch computer scientist who was a professor in the Department of Informatics at the Radboud University Nijmegen in the Netherlands.
Richard Simpson Bird was an English computer scientist.
Lambert Guillaume Louis Théodore Meertens or L.G.L.T. Meertens is a Dutch computer scientist and professor. As of 2020, he is a researcher at the Kestrel Institute, a nonprofit computer science research center in Palo Alto's Stanford Research Park.
Thomas Stephen Edward Maibaum Fellow of the Royal Society of Arts (FRSA) is a computer scientist.
Willem Louis van der Poel is a Dutch computer scientist, who is known for designing one of the first computers to be designed in the Netherlands, the Zeer Eenvoudige Binaire Reken Automaat (ZEBRA), translated as Very Simple Binary Automatic Calculator.
Roland Carl Backhouse is a British computer scientist and mathematician. As of 2020, he is Emeritus Professor of Computing Science at the University of Nottingham.
Maurice Paul Nivat was a French computer scientist. His research in computer science spanned the areas of formal languages, programming language semantics, and discrete geometry. A 2006 citation for an honorary doctorate (Ph.D.) called Nivat one of the fathers of theoretical computer science. He was a professor at the University Paris Diderot until 2001.
Jeremy Gibbons is a computer scientist and professor of computing at the University of Oxford. He serves as Deputy Director of the Software Engineering Programme in the Department of Computer Science, Governing Body Fellow at Kellogg College and Pro-Proctor of the University of Oxford.
Eiiti Wada is a computer scientist and emeritus professor at the University of Tokyo and the Research Director of Internet Initiative Japan (IIJ), a computer network technology company. He is one of the creators of the Happy Hacking Keyboard.
IFIP Working Group 2.1 on Algorithmic Languages and Calculi is a working group of the International Federation for Information Processing (IFIP).
Charles Katz is an American mathematician and computer scientist known for his contributions to early compiler development in the 1950s.
Michel Sintzoff was a Belgian mathematician and computer scientist.
Yanhong Annie Liu is a computer scientist and professor of computer science at Stony Brook University where she works on new programming languages, software systems, algorithms, program design, optimizing, analysis, and transformations, intelligent systems, distributed computing systems, and computer security.
Annabelle K. McIver is a computer scientist whose research involves the use of formal methods and information flow in computer security and the verification of probabilistic systems. Educated in mathematics in the UK, she works in Australia as professor in the School of Computing at Macquarie University, and as one of the founding leaders of Macquarie's Future Communications Research Centre.