Harold Abelson
Massachusetts Institute of Technology
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Harold Abelson.
Communications of The ACM | 2000
Harold Abelson; Don Allen; Daniel Coore; Chris Hanson; George E. Homsy; Thomas F. Knight; Erik M. Rauch; Gerald Jay Sussman; Ron Weiss
ion to Continuous Space and Time The amorphous model postulates computing particles distributed throughout a space. If the particles are dense, one can imagine the particles as actually filling the space, and create programming abstractions that view the space itself as the object being programmed, rather than the collection of particles. Beal and Bachrach [10, 4] pursued this approach by creating a language, Proto, where programmers specify the behavior of an amorphous computer as though it were a continuous material filling the space it occupies. Proto programs manipulate fields of values spanning the entire space. Programming primitives are designed to make it simple to compile global operations to operations at each point of the continuum. These operations are approximated by having each device represent a nearby chunk of space. Programs are specified in space and time units that are independent of the distribution of particles and of the particulars of communication and execution on those particles (Figure 5). Programs are composed functionally, and many of the details of communication and composition are made implicit by Proto’s runtime system, allowing complex programs to be expressed simply. Proto has been applied to applications in sensor networks like target tracking and threat avoidance, to swarm robotics and to modular robotics, e.g., generating a planar wave for coordinated actuation. Newton’s language Regiment [45, 44] also takes a continuous view of space and time. Regiment is organized in terms of stream operations, where each stream represents a time-varying quantity over a part of space, for example, the average value of the temperature over a disc of a given radius centered at a designated point. Regiment, also a functional language, is designed to gather streams of data from regions of the amorphous computer and accumulate them at a single point. This assumption allows Regiment to provide region-wide summary functions that are difficult to implement in Proto.
Communications of The ACM | 2008
Daniel J. Weitzner; Harold Abelson; Tim Berners-Lee; Joan Feigenbaum; James A. Hendler; Gerald Jay Sussman
With access control and encryption no longer capable of protecting privacy, laws and systems are needed that hold people accountable for the misuse of personal information, whether public or secret.
Communications of The ACM | 1986
Andrea A. diSessa; Harold Abelson
Programming is most often viewed as a way for experts to get computers to perform complex tasks efficiently and reliably. Boxer presents an alternative image—programming as a way for nonexperts to control a reconstructible medium, much like written language, but with dramatically extended interactive capabilities.
Higher-order and Symbolic Computation \/ Lisp and Symbolic Computation | 1998
Harold Abelson; R. K. Dybvig; Christopher T. Haynes; G. J. Rozas; Norman I. Adams; Daniel P. Friedman; Eugene E. Kohlbecker; Guy L. Steele; D. H. Bartley; R. Halstead; D. Oxley; Gerald Jay Sussman; G. Brooks; C. Hanson; K. M. Pitman; Mitchell Wand
The report gives a defining description of the programming language Scheme. Scheme is a statically scoped and properly tail-recursive dialect of the Lisp programming language invented by Guy Lewis Steele, Jr. and Gerald Jay Sussman. It was designed to have an exceptionally clear and simple semantics and few different ways to form expressions. A wide variety of programming paradigms, including imperative, functional, and message passing styles, find convenient expression in Scheme.The introduction offers a brief history of the language and of the report.The first three chapters present the fundamental ideas of the language and describe the notational conventions used for describing the language and for writing programs in the language.Sections 5 and 6 describe the syntax and semantics of expressions, programs, and definitions.Section 7 describes Schemes built-in procedures, which include all of the languages data manipulation and input/output primitives.Section 8 provides a formal syntax for Scheme written in extended BNF, along with a formal denotational semantics. An example of the use of the language follows the formal syntax and semantics.The report concludes with a list of references and an alphabetic index and is followed by a short list of clarifications and corrections.
Communications of The ACM | 1989
Harold Abelson; Michael Eisenberg; Matthew Halfant; Jacob Katzenelson; Elisha Sacks; Gerald Jay Sussman; Jack Wisdom; Kenneth Yip
The authors discuss the development of intelligent techniques appropriate for the automatic preparation, execution, and control of numerical experiments.
Communications of The ACM | 1980
Harold Abelson; Peter Andreae
The need to transfer information between processing elements can be a major factor in determining the performance of a VLSI circuit. We show that communication considerations alone dictate that any VLSI design for computing the 2<italic>n</italic>-bit product of two <italic>n</italic>-bit integers must satisfy the constraint <italic>AT</italic><supscrpt>2</supscrpt> ≥ <italic>n</italic><supscrpt>2</supscrpt>/64 where <italic>A</italic> is the area of the chip and <italic>T</italic> is the time required to perform the computation. This same tradeoff applies to circuits which can shift <italic>n</italic>-bit words through <italic>n</italic> different positions.
acm southeast regional conference | 2012
Jeff Gray; Harold Abelson; David Wolber; Michelle Friend
Mobile phone programming can provide an authentic and engaging hook into computer science. With App Inventor, developed by Google and recently moved to MIT, programming Android apps is as easy as clicking blocks together. App Inventor has been used successfully in after school programs, roadshows, summer camps, teacher workshops, and computer science classrooms from middle school through college. In this tutorial, participants will get an overview of App Inventor including project ideas and sample curriculum. In addition, the new CS Principles project will be introduced to participants, including a discussion of the Big Ideas and Learning Objectives that have been defined by the College Board and NSF. Specifically, the use of App Inventor as a platform for teaching CS Principles will be discussed with examples from an official Principles pilot effort within Alabama. A virtual panel with App Inventor experts will allow participants to interact and ask questions about the exciting opportunities available with App Inventor.
Theoretical Computer Science | 1978
Harold Abelson
Abstract We formulate the rudiments of a method for assessing the difficulty of dividing a computational problem into “independent simpler parts”. This work illustrates measures of complexity which attempt to capture the distinction between “local” and “global” computational problems. One such measure is the covering multiplicity , or average number of partial computations which take account of a given piece of data. Another measure reflects the intuitive notion of a “highly interconnected” computational problem, for which subsets of the data cannot be processed “in isolation”. These ideas are applied in the setting of computational geometry to show that the connectivity predicate has unbounded covering multiplicity and is highly interconnected; and in the setting of numerical computations to measure the complexity of evaluating polynomials and solving systems of linear equations.
Computers & Mathematics With Applications | 1989
Harold Abelson
The Bifurcation Interpreter is a computer program that autonomously explores the steady-state orbits of one-parameter families of periodically- driven oscillators. To report its findings, the Interpreter generates schematic diagrams and English text descriptions similar to those appearing in the science and engineering research literature. Given a system of equations as input, the Interpreter uses symbolic algebra to automatically generate numerical procedures that simulate the system. The Interpreter incorporates knowledge about dynamical systems theory, which it uses to guide the simulations, to interpret the results, and to minimize the effects of numerical error.
Communications of The ACM | 2015
Harold Abelson; Ross J. Anderson; Steven Michael Bellovin; Josh Benaloh; Matt Blaze; Whitfield Diffie; John Gilmore; Matthew Green; Susan Landau; Peter G. Neumann; Ronald L. Rivest; Jeffrey I. Schiller; Bruce Schneier; Michael A. Specter; Daniel J. Weitzner
Mandating insecurity by requiring government access to all data and communications.