publications: - title: "Forward Reasoning and Dependency-Directed Backtracking in a System for Computer-Aided Circuit Analysis" author: - name: "Richard M. Stallman" link: "https://researchr.org/alias/richard-m.-stallman" - name: "Gerald Jay Sussman" link: "http://groups.csail.mit.edu/mac/users/gjs/" year: "1977" tags: - "analysis" researchr: "https://researchr.org/publication/StallmanS77" cites: 0 citedby: 0 journal: "Artificial Intelligence" volume: "9" number: "2" pages: "135-196" kind: "article" key: "StallmanS77" - title: "Electrical Design: A Problem for Artificial Intelligence Research" author: - name: "Gerald Jay Sussman" link: "http://groups.csail.mit.edu/mac/users/gjs/" year: "1977" tags: - "design research" - "design" researchr: "https://researchr.org/publication/Sussman77" cites: 0 citedby: 0 pages: "894-900" booktitle: "IJCAI" kind: "inproceedings" key: "Sussman77" - title: "Scheme: A Interpreter for Extended Lambda Calculus" author: - name: "Gerald Jay Sussman" link: "http://groups.csail.mit.edu/mac/users/gjs/" - name: "Guy L. Steele Jr." link: "http://research.sun.com/people/mybio.php?uid=25706" year: "1998" tags: - "interpreter" researchr: "https://researchr.org/publication/SussmanS98a" cites: 0 citedby: 0 journal: "Higher-Order and Symbolic Computation" volume: "11" number: "4" pages: "405-439" kind: "article" key: "SussmanS98a" - title: "Why programming is a good medium for expressing poorly understood and sloppily formulated ideas" author: - name: "Gerald Jay Sussman" link: "http://groups.csail.mit.edu/mac/users/gjs/" year: "2005" doi: "http://doi.acm.org/10.1145/1094855.1094860" abstract: " I have stolen my title from the title of a paper given by Marvin Minsky in the 1960s, because it most effectively expresses what I will try to convey in this talk.We have been programming universal computers for about 50 years. Programming provides us with new tools to express ourselves. We now have intellectual tools to describe \"how to\" as well as \"what is.\" This is a profound transformation: it is a revolution in the way we think and in the way we express what we think.For example, one often hears a student or teacher complain that the student knows the \"theory\" of some subject but cannot effectively solve problems. We should not be surprised: the student has no formal way to learn technique. We expect the student to learn to solve problems by an inefficient process: the student watches the teacher solve a few problems, hoping to abstract the general procedures from the teacher's behavior on particular examples. The student is never given any instructions on how to abstract from examples, nor is the student given any language for expressing what has been learned. It is hard to learn what one cannot express. But now we can express it!Expressing methodology in a computer language forces it to be unambiguous and computationally effective. The task of formulating a method as a computer-executable program and debugging that program is a powerful exercise in the learning process. The programmer expresses his/her poorly understood or sloppily formulated idea in a precise way, so that it becomes clear what is poorly understood or sloppily formulated. Also, once formalized procedurally, a mathematical idea becomes a tool that can be used directly to compute results.I will defend this viewpoint with examples and demonstrations from electrical engineering and from classical mechanics. " links: doi: "http://doi.acm.org/10.1145/1094855.1094860" tags: - "programming languages" - "object-oriented programming" - "transformation engineering" - "language engineering" - "transformation language" - "debugging" - "programming" - "subject-oriented programming" - "feature-oriented programming" - "transformation" - "program transformation" researchr: "https://researchr.org/publication/Sussman05" cites: 0 citedby: 0 pages: "6" booktitle: "Companion to the 20th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2005, October 16-20, 2005, San Diego, CA, USA" editor: - name: "Ralph E. Johnson" link: "http://st-www.cs.illinois.edu/users/johnson/" - name: "Richard P. Gabriel" link: "https://researchr.org/alias/richard-p.-gabriel" publisher: "ACM" isbn: "1-59593-193-7" kind: "inproceedings" key: "Sussman05" - title: "Intelligence in Scientific Computing" author: - name: "Harold Abelson" link: "http://groups.csail.mit.edu/mac/users/hal/" - name: "Michael Eisenberg" link: "https://researchr.org/alias/michael-eisenberg" - name: "Matthew Halfant" link: "https://researchr.org/alias/matthew-halfant" - name: "Jacob Katzenelson" link: "https://researchr.org/alias/jacob-katzenelson" - name: "Elisha Sacks" link: "https://researchr.org/alias/elisha-sacks" - name: "Gerald Jay Sussman" link: "http://groups.csail.mit.edu/mac/users/gjs/" - name: "Jack Wisdom" link: "https://researchr.org/alias/jack-wisdom" - name: "Kenneth Yip" link: "https://researchr.org/alias/kenneth-yip" year: "1989" researchr: "https://researchr.org/publication/AbelsonEHKSSWY89" cites: 0 citedby: 0 journal: "Communications of the ACM" volume: "32" number: "5" pages: "546-562" kind: "article" key: "AbelsonEHKSSWY89" - title: "Revised Report on the Algorithmic Language Scheme" author: - name: "Harold Abelson" link: "http://groups.csail.mit.edu/mac/users/hal/" - name: "R. Kent Dybvig" link: "https://researchr.org/alias/r.-kent-dybvig" - name: "Christopher T. Haynes" link: "https://researchr.org/alias/christopher-t.-haynes" - name: "Guillermo Juan Rozas" link: "https://researchr.org/alias/guillermo-juan-rozas" - name: "N. I. Adams IV" link: "https://researchr.org/alias/n.-i.-adams-iv" - name: "Daniel P. Friedman" link: "https://researchr.org/alias/daniel-p.-friedman" - name: "Eugene E. Kohlbecker" link: "https://researchr.org/alias/eugene-e.-kohlbecker" - name: "Guy L. Steele Jr." link: "http://research.sun.com/people/mybio.php?uid=25706" - name: "David H. Bartley" link: "https://researchr.org/alias/david-h.-bartley" - name: "Robert H. Halstead Jr." link: "https://researchr.org/alias/robert-h.-halstead-jr." - name: "Don Oxley" link: "https://researchr.org/alias/don-oxley" - name: "Gerald Jay Sussman" link: "http://groups.csail.mit.edu/mac/users/gjs/" - name: "G. Brooks" link: "https://researchr.org/alias/g.-brooks" - name: "Chris Hanson" link: "https://researchr.org/alias/chris-hanson" - name: "Kent M. Pitman" link: "https://researchr.org/alias/kent-m.-pitman" - name: "Mitchell Wand" link: "https://researchr.org/alias/mitchell-wand" year: "1998" researchr: "https://researchr.org/publication/AbelsonDHRAFKSBHOSBHPW98" cites: 0 citedby: 0 journal: "Higher-Order and Symbolic Computation" volume: "11" number: "1" pages: "7-105" kind: "article" key: "AbelsonDHRAFKSBHOSBHPW98" - title: "A Digital Orrery" author: - name: "James H. Applegate" link: "https://researchr.org/alias/james-h.-applegate" - name: "Michael R. Douglas" link: "https://researchr.org/alias/michael-r.-douglas" - name: "Yekta Gürsel" link: "https://researchr.org/alias/yekta-g%C3%BCrsel" - name: "Peter Hunter" link: "https://researchr.org/alias/peter-hunter" - name: "Charles L. Seitz" link: "https://researchr.org/alias/charles-l.-seitz" - name: "Gerald Jay Sussman" link: "http://groups.csail.mit.edu/mac/users/gjs/" year: "1985" researchr: "https://researchr.org/publication/ApplegateDGHSS85" cites: 0 citedby: 0 journal: "IEEE Transactions on Computers" volume: "34" number: "9" pages: "822-831" kind: "article" key: "ApplegateDGHSS85" - title: "Tutorial: Abstraction in Numerical Methods" author: - name: "Gerald Jay Sussman" link: "http://groups.csail.mit.edu/mac/users/gjs/" - name: "Matthew Halfant" link: "https://researchr.org/alias/matthew-halfant" year: "1988" doi: "http://doi.acm.org/10.1145/62678.62679" links: doi: "http://doi.acm.org/10.1145/62678.62679" tags: - "abstraction" researchr: "https://researchr.org/publication/SussmanH88" cites: 0 citedby: 0 pages: "1-7" booktitle: "LISP and Functional Programming" kind: "inproceedings" key: "SussmanH88" - title: "Sparse Representations for Fast, One-Shot Learning" author: - name: "Kenneth Yip" link: "https://researchr.org/alias/kenneth-yip" - name: "Gerald Jay Sussman" link: "http://groups.csail.mit.edu/mac/users/gjs/" year: "1997" researchr: "https://researchr.org/publication/YipS97" cites: 0 citedby: 0 pages: "521-527" booktitle: "AAAI/IAAI" kind: "inproceedings" key: "YipS97" - title: "Structure and Interpretation of Computer Programs, Second Edition" author: - name: "Harold Abelson" link: "http://groups.csail.mit.edu/mac/users/hal/" - name: "Gerald Jay Sussman" link: "http://groups.csail.mit.edu/mac/users/gjs/" year: "1996" doi: "http://mitpress.mit.edu/sicp/" links: doi: "http://mitpress.mit.edu/sicp/" tags: - "Scheme" researchr: "https://researchr.org/publication/AbelsonS96" cites: 0 citedby: 0 publisher: "MIT Press" isbn: "0-262-01153-0" kind: "book" key: "AbelsonS96" - title: "Design of a LISP-Based Microprocessor" author: - name: "Guy L. Steele Jr." link: "http://research.sun.com/people/mybio.php?uid=25706" - name: "Gerald Jay Sussman" link: "http://groups.csail.mit.edu/mac/users/gjs/" year: "1980" tags: - "rule-based" - "design" researchr: "https://researchr.org/publication/SteeleS80%3A0" cites: 0 citedby: 0 journal: "Communications of the ACM" volume: "23" number: "11" pages: "628-645" kind: "article" key: "SteeleS80:0" - title: "The Dream of Lifetime: A Lazy Variable Extent Mechanism" author: - name: "Guy L. Steele Jr." link: "http://research.sun.com/people/mybio.php?uid=25706" - name: "Gerald Jay Sussman" link: "http://groups.csail.mit.edu/mac/users/gjs/" year: "1980" tags: - "laziness" researchr: "https://researchr.org/publication/SteeleS80" cites: 0 citedby: 0 pages: "163-172" booktitle: "LISP Conference" kind: "inproceedings" key: "SteeleS80" - title: "Information accountability" author: - name: "Daniel J. Weitzner" link: "https://researchr.org/alias/daniel-j.-weitzner" - name: "Harold Abelson" link: "http://groups.csail.mit.edu/mac/users/hal/" - name: "Tim Berners-Lee" link: "http://www.w3.org/People/Berners-Lee/" - name: "Joan Feigenbaum" link: "https://researchr.org/alias/joan-feigenbaum" - name: "James A. Hendler" link: "https://researchr.org/alias/james-a.-hendler" - name: "Gerald Jay Sussman" link: "http://groups.csail.mit.edu/mac/users/gjs/" year: "2008" doi: "http://doi.acm.org/10.1145/1349026.1349043" links: doi: "http://doi.acm.org/10.1145/1349026.1349043" researchr: "https://researchr.org/publication/WeitznerABFHS08" cites: 0 citedby: 0 journal: "Communications of the ACM" volume: "51" number: "6" pages: "82-87" kind: "article" key: "WeitznerABFHS08" - title: "The First Report on Scheme Revisited" author: - name: "Gerald Jay Sussman" link: "http://groups.csail.mit.edu/mac/users/gjs/" - name: "Guy L. Steele Jr." link: "http://research.sun.com/people/mybio.php?uid=25706" year: "1998" doi: "http://dx.doi.org/10.1023/A:1010079421970" links: doi: "http://dx.doi.org/10.1023/A:1010079421970" tags: - "Scheme" researchr: "https://researchr.org/publication/SussmanS98" cites: 0 citedby: 0 journal: "Higher-Order and Symbolic Computation" volume: "11" number: "4" pages: "399-404" kind: "article" key: "SussmanS98" - title: "Structure and Interpretation of Computer Programs" author: - name: "Harold Abelson" link: "http://groups.csail.mit.edu/mac/users/hal/" - name: "Gerald Jay Sussman" link: "http://groups.csail.mit.edu/mac/users/gjs/" year: "1985" researchr: "https://researchr.org/publication/AbelsonS85" cites: 0 citedby: 0 publisher: "MIT Press" isbn: "0-262-51036-7" kind: "book" key: "AbelsonS85" - title: "Amorphous Computing" author: - name: "Harold Abelson" link: "http://groups.csail.mit.edu/mac/users/hal/" - name: "Don Allen" link: "https://researchr.org/alias/don-allen" - name: "Daniel Coore" link: "https://researchr.org/alias/daniel-coore" - name: "Chris Hanson" link: "https://researchr.org/alias/chris-hanson" - name: "George Homsy" link: "https://researchr.org/alias/george-homsy" - name: "Thomas F. Knight Jr." link: "https://researchr.org/alias/thomas-f.-knight-jr." - name: "Radhika Nagpal" link: "https://researchr.org/alias/radhika-nagpal" - name: "Erik Rauch" link: "https://researchr.org/alias/erik-rauch" - name: "Gerald Jay Sussman" link: "http://groups.csail.mit.edu/mac/users/gjs/" - name: "Ron Weiss" link: "https://researchr.org/alias/ron-weiss" year: "2000" doi: "http://doi.acm.org/10.1145/332833.332842" links: doi: "http://doi.acm.org/10.1145/332833.332842" researchr: "https://researchr.org/publication/AbelsonACHHKNRSW00" cites: 0 citedby: 0 journal: "Communications of the ACM" volume: "43" number: "5" pages: "74-82" kind: "article" key: "AbelsonACHHKNRSW00" - title: "CONSTRAINTS - A Language for Expressing Almost-Hierarchical Descriptions" author: - name: "Gerald Jay Sussman" link: "http://groups.csail.mit.edu/mac/users/gjs/" - name: "Guy L. Steele Jr." link: "http://research.sun.com/people/mybio.php?uid=25706" year: "1980" tags: - "constraints" researchr: "https://researchr.org/publication/SussmanS80" cites: 0 citedby: 0 journal: "Artificial Intelligence" volume: "14" number: "1" pages: "1-39" kind: "article" key: "SussmanS80" - title: "Data-Purpose Algebra: Modeling Data Usage Policies" author: - name: "Chris Hanson" link: "https://researchr.org/alias/chris-hanson" - name: "Tim Berners-Lee" link: "http://www.w3.org/People/Berners-Lee/" - name: "Lalana Kagal" link: "https://researchr.org/alias/lalana-kagal" - name: "Gerald Jay Sussman" link: "http://groups.csail.mit.edu/mac/users/gjs/" - name: "Daniel J. Weitzner" link: "https://researchr.org/alias/daniel-j.-weitzner" year: "2007" doi: "http://doi.ieeecomputersociety.org/10.1109/POLICY.2007.14" abstract: "Data is often encumbered by restrictions on the ways in which it may be used. These restrictions on usage may be determined by statute, by contract, by custom, or by common decency, and they are used to control collection of data, diffusion of data, and the inferences that can be made over the data. In this paper, we present a data-purpose algebra that can be used to model these kinds of restrictions in various different domains. We demonstrate the utility of our approach by modeling part of the Privacy Act (5 USC ?552a)1, which states that data collected about US citizens can be used only for the purposes for which it was collected. We show (i) how this part of the Privacy act can be represented as a set of restrictions on data usage, (ii) how the authorized purposes of data flowing through different government agencies can be calculated, and (iii) how these purposes can be used to determine whether the Privacy Act is being enforced appropriately." links: doi: "http://doi.ieeecomputersociety.org/10.1109/POLICY.2007.14" tags: - "contracts" - "meta-model" - "modeling" - "data-flow" - " algebra" - "Meta-Environment" - "systematic-approach" researchr: "https://researchr.org/publication/HansonBKSW07" cites: 0 citedby: 0 pages: "173-177" booktitle: "8th IEEE International Workshop on Policies for Distributed Systems and Networks (POLICY 2007), 13-15 June 2007, Bologna, Italy" publisher: "IEEE Computer Society" kind: "inproceedings" key: "HansonBKSW07" - title: "Scheme: An Interpreter for Extended Lambda Calculus" author: - name: "Gerald Jay Sussman" link: "http://groups.csail.mit.edu/mac/users/gjs/" - name: "Guy L. Steele Jr." link: "http://research.sun.com/people/mybio.php?uid=25706" year: "1975" doi: "http://en.wikisource.org/wiki/Scheme:_An_interpreter_for_extended_lambda_calculus" links: doi: "http://en.wikisource.org/wiki/Scheme:_An_interpreter_for_extended_lambda_calculus" tags: - "interpreter" researchr: "https://researchr.org/publication/SussmanSteeleJr.1975" cites: 0 citedby: 0 institution: "MIT AI Lab" type: "AI Memos" number: "349" kind: "techreport" key: "SussmanSteeleJr.1975" - title: "Telecommunications and Transnationalism: The Polarization of Social Space" author: - name: "Francesco Stolfi" link: "https://researchr.org/alias/francesco-stolfi" - name: "Gerald Jay Sussman" link: "http://groups.csail.mit.edu/mac/users/gjs/" year: "2001" doi: "http://www.indiana.edu/~tisj/readers/abstracts/17/17-1 20Stolfi.html" links: doi: "http://www.indiana.edu/~tisj/readers/abstracts/17/17-1 20Stolfi.html" tags: - "social" researchr: "https://researchr.org/publication/StolfiS01" cites: 0 citedby: 0 journal: "Inf. Soc." volume: "17" number: "1" pages: "49-62" kind: "article" key: "StolfiS01" - title: "Intelligent Support for the Engineering of Software (Panel)" author: - name: "Gerald Jay Sussman" link: "http://groups.csail.mit.edu/mac/users/gjs/" year: "1985" tags: - "software engineering" researchr: "https://researchr.org/publication/Sussman85" cites: 0 citedby: 0 pages: "397-399" booktitle: "ICSE" kind: "inproceedings" key: "Sussman85"