Jack B. Dennis is Professor of Computer
Science and Engineering, Emeritus, at M.I.T.
As an M.I.T. undergraduate, Jack Dennis
joined the VI-A Cooperative Program in Electrical Engineering, working at the
Air Force Cambridge Research Laboratories on projects in speech processing and
novel radar systems. As a graduate student, he was an early user of the
Whirlwind computer, and developed an innovative program for solving the
"transportation problem", a classical case of linear programming. In
a summer job at Bell Telephone Laboratories, he designed and constructed
special test equipment for the barrier grid storage tube, a key element for an
experimental electronic telephone switching system.
He completed the doctorate in Electrical
Engineering in 1958, writing a dissertation that explored the strong analogy of
mathematical programming problems to the solution of certain kinds of
electrical networks. In Mathematical Programming and Electrical Networks, this
analogy was shown to yield new algorithms for mathematical programming
problems, and the extension of duality theory to quadratic and general convex
programming formulations. He then joined the M.I.T. faculty in the Department
of Electrical Engineering and was promoted to full professor in 1969.
Professor Dennis designed an extensive set
of hardware alterations and additions to a DEC PDP-1 computer to create a
time-shared computer system suited to support research in electronics,
communications, and computer science. It was one of the first interactive,
time-shared computers that began operation around 1963. One of several novel
features of this system was the ability of a user to employ a symbolic
debugging tool (an early version of the DDT program) with no possibility of
disruption of the debugger by the program under test. Similar features were
later incorporated into the SDS 940 computer used in the Genie time-sharing
system at the University of California at Berkeley, and into the design of the
DEC PDP-11/45 computer, the machine model that supported development of the
UNIX operating system at Bell Laboratories.
In the early days of M.I.T.'s
Project MAC, Professor Dennis worked with Edward Glaser of the Multics team to specify the unique segment addressing and
paging mechanisms that became a fundamental part of the General Electric model
645 computer (later the Honeywell 6180). In recognition of his contributions to
the Multics project, Dr. Dennis was elected Fellow of
the IEEE.
As leader of the Computation Structures
Group, M.I.T. Laboratory for Computer Science, from 1963 through 1985,
Professor Dennis directed a research program that developed aspects of computer
architecture and programming languages based on dataflow models of program
representation and execution. These developments led to dataflow projects at
many universities and research institutes around the world, and won the
ACM/IEEE Eckert-Mauchly Award for Professor Dennis in
1984. During this period, Professor Dennis supervised the doctoral research of
more than twenty-five graduate students in topics ranging from the theory of
Petri nets and the semantics of programming languages to computer system
architecture and performance analysis. Group activities included construction
of a dataflow engineering model to demonstrate the validity of dataflow
concepts and the feasibility of asynchronous packet routing networks. In 1994 he was inducted as a Fellow of the
ACM.
Professor Dennis provided consulting
services to computer manufacturers including Digital Equipment Corporation,
IBM, RCA, and Burroughs. He was a principal member of the consulting firm Research
and Consulting, Incorporated, which evaluated a major computer development
program of the Navy, and advised the
In his teaching at M.I.T. Prof. Dennis developed
six subjects in new areas of computer theory and computer systems: (1)
Theoretical Models for Computation. The material developed for this subject was
published as a book, Machines, Languages, and Computation, written with former
graduate students Peter Denning and Joseph Qualitz.
(2) Computation Structures. This was the intial
version of the basic computer architecture subject of M.I.T.'s
undergraduate curriculum in Computer Science. It was unique in its emphasis on
the relation of hardware and software technology to the implementation of
programming languages. (3) Structure of Computer Systems. This graduate subject
treated advanced concepts in computer architecture and operating systems. (4)
Semantic Theory for Computer Systems. A graduate subject that introduced, for
the first time at M.I.T., advanced principles of semantic theory for computer
programs and languages, and studied their application to the specification and
design of computer hardware and software systems. (5) Semantics of Parallel Computation.
This graduate subject treated the various means researchers have conceived for
representing concurrency in hardware and software systems. (6) Computer System
Architecture: This was one of four core subjects introduced as a common base
for graduate education in computer science. Professor Dennis taught the first
offering of the subject in collaboration with Professor Arvind.
Prof. Dennis' professional activities
include his current participation in IFIP Working Group 2.8: Functional
Programming and his earlier work in IFIP Working Group 2.2: Formal Description
of Programming Concepts. He organized several workshop meetings relating to
dataflow concepts, concurrency in computation, and semantic foundations for
structured programming. In 1967 he was principle organizer of the first ACM
Symposium on Operating System Principles.
Between 1987 and 2001 Prof. Dennis served
as an independent consultant and research scientist on projects primarily
concerned with parallel computer hardware and software.
As Visiting Scientist at the NASA Research
Institute for Advanced Computer Science Dr. Dennis developed strategies for
using the Sisal functional programming language to write data parallel programs
for the Connection Machine, and began the design and programming of the
Paradigm Compiler. For Boeing Aerospace, he developed parallel implementations
of signal processing algorithms and specified a high-performance
multiprocessor for their implementation based on dataflow principles.
In the 1989-1990 academic year, Prof. Dennis collaborated with Prof. Gao Guang-Rong at
From July 1992 through June 1994 Dr. Dennis
worked with the Architecture Group of Carlstedt Elektronik,
From 1995 to 2001 Prof. Dennis served as
Chief Scientist of Acorn Networks, Inc., a company engaged in developing
high-performance silicon devices for the communications infrastructure. His
work led to an innovative design for a high-performance network processor using
multithreading and novel techniques for packet synchronization and instruction
level parallelism.