Content deleted Content added
rm links to redirected page Tags: Mobile edit Mobile web edit Advanced mobile edit |
Copyedit. Expand US postal abbreviations. |
||
Line 7:
| caption = Cover of the second edition
| author = [[Harold Abelson]], [[Gerald Jay Sussman]], Julie Sussman
| cover_artist =
| country =
| series =
| subject = [[Computer science]]
| genre = [[Textbook]]
| publisher = [[MIT Press]]
| pub_date = 1984 (1st ed.), 1996 (2nd ed.), 2022 ([[Structure and Interpretation of Computer Programs, JavaScript Edition|JavaScript ed.]])
| media_type =
| pages = 657
| isbn = 0-262-51087-1
| isbn_note = (2nd ed.)
| oclc =
| dewey =
| congress = QA76.6 .A255 1996
| website = {{URL|mitpress.mit.edu/sicp}}
}}
'''''Structure and Interpretation of Computer Programs''''' ('''''SICP''''') is a [[computer science]] textbook by [[Massachusetts Institute of Technology]] professors [[Harold Abelson]] and [[Gerald Jay Sussman]] with Julie Sussman. It is known as the "Wizard Book" in [[hacker culture]].<ref>{{Cite book |last=Raymond |first=Eric S. |url=http://archive.org/details/newhackersdictio00raym |title=The New hacker's dictionary |last2=Steele |first2=Guy |date=1991 |
[[MIT Press]] published the first edition in 1984, and the second edition in 1996. It was formerly used as the textbook for MIT's introductory course in [[computer science]]. SICP focuses on discovering general [[Pattern|patterns]] for solving specific problems, and building [[Software system|software systems]] that make use of those patterns.<ref>{{Citation |last=Harvey |first=B |year=2011 |contribution-url=http://www.eecs.berkeley.edu/~bh/sicp.html |contribution=Why SICP matters? |title=The 150th anniversary of MIT |publisher=[[Boston Globe]]}}.</ref>
Line 36:
=== Chapter 1: Building [[Abstraction (computer science)|Abstractions]] with [[Function (computer programming)|Procedures]] ===
▲# The Elements of Programming
▲# Procedures and the [[Process (computing)|Processes]] They Generate
▲# Formulating Abstractions with Higher-Order Procedures
=== Chapter 2: Building Abstractions with [[Data]] ===
▲# Introduction to Data Abstraction
# Hierarchical Data and the [[Closure (mathematics)|Closure Property]]
# Symbolic Data
# Multiple Representations for Abstract Data
# Systems with Generic Operations
=== Chapter 3: Modularity, [[Object (computer science)|Objects]], and [[State (computer science)|State]] ===
# [[Assignment (computer science)|Assignment]] and [[Local variable|Local State]]
# The Environment Model of Evaluation
# Modeling with Mutable Data
# [[Concurrency (computer science)|Concurrency]]: Time Is of the Essence
# Streams
=== Chapter 4: [[Metalinguistics|Metalinguistic]] Abstraction ===
Line 64 ⟶ 62:
=== Chapter 5: Computing with [[Register machine|Register Machines]] ===
# Designing [[Register machine|Register Machines]]
# A Register-Machine Simulator
# [[Register allocation|Storage Allocation]] and [[Garbage collection (computer science)|Garbage Collection]]
# The Explicit-Control Evaluator
# Compilation
== Characters ==
|