Harold Abelson · 657 pages
Rating: (3.5K votes)
“Programs must be written for people to read, and only incidentally for machines to execute.”
― Harold Abelson, quote from Structure and Interpretation of Computer Programs (MIT Electrical Engineering and Computer Science)
“Computational processes are abstract beings that inhabit computers. As they evolve, processes manipulate other abstract things called data. The evolution of a process is directed by a pattern of rules called a program. People create programs to direct processes. In effect, we conjure the spirits of the computer with our spells.”
― Harold Abelson, quote from Structure and Interpretation of Computer Programs (MIT Electrical Engineering and Computer Science)
“Syntactic sugar causes cancer of the semicolon.”
― Harold Abelson, quote from Structure and Interpretation of Computer Programs (MIT Electrical Engineering and Computer Science)
“I think that it's extraordinarily important that we in computer science keep fun in computing. When it started out, it was an awful lot of fun. Of course, the paying customers got shafted every now and then, and after a while we began to take their complaints seriously. We began to feel as if we really were responsible for the successful, error-free perfect use of these machines. I don't think we are. I think we're responsible for stretching them, setting them off in new directions, and keeping fun in the house. I hope the field of computer science never loses its sense of fun. Above all, I hope we don't become missionaries. Don't feel as if you're Bible salesmen. The world has too many of those already. What you know about computing other people will learn. Don't feel as if the key to successful computing is only in your hands. What's in your hands, I think and hope, is intelligence: the ability to see the machine as more than when you were first led up to it, that you can make it more.”
― Harold Abelson, quote from Structure and Interpretation of Computer Programs (MIT Electrical Engineering and Computer Science)
“Underlying our approach to this subject is our conviction that "computer science" is not a science and that its significance has little to do with computers. The computer revolution is a revolution in the way we think and in the way we express what we think. The essence of this change is the emergence of what might best be called procedural epistemology—the study of the structure of knowledge from an imperative point of view, as opposed to the more declarative point of view taken by classical mathematical subjects. Mathematics provides a framework for dealing precisely with notions of "what is". Computation provides a framework for dealing precisely with notions of "how to".”
― Harold Abelson, quote from Structure and Interpretation of Computer Programs (MIT Electrical Engineering and Computer Science)
“We are about to study the idea of a computational process. Computational processes are abstract beings that inhabit computers. As they evolve, processes manipulate other abstract things called data. The evolution of a process is directed by a pattern of rules called a program. People create programs to direct processes. In effect, we conjure the spirits of the computer with our spells.
A computational process is indeed much like a sorcerer's idea of a spirit. It cannot be seen or touched. It is not composed of matter at all. However, it is very real. It can perform intellectual work. It can answer questions. It can affect the world by disbursing money at a bank or by controlling a robot arm in a factory. The programs we use to conjure processes are like a sorcerer's spells. They are carefully composed from symbolic expressions in arcane and esoteric programming languages that prescribe the tasks we want our processes to perform.
A computational process, in a correctly working computer, executes programs precisely and accurately. Thus, like the sorcerer's apprentice, novice programmers must learn to understand and to anticipate the consequences of their conjuring. Even small errors (usually called bugs or glitches) in programs can have complex and unanticipated consequences.”
― Harold Abelson, quote from Structure and Interpretation of Computer Programs (MIT Electrical Engineering and Computer Science)
“It is possible, indeed important, to be able to separate these two notions—to create procedures without naming them, and to give names to procedures that have already been created.”
― Harold Abelson, quote from Structure and Interpretation of Computer Programs (MIT Electrical Engineering and Computer Science)
“I hope the field of computer science never loses its sense of fun. ... What you know about computing other people will learn. Don’t feel as if the key to successful computing is only in your hands. What’s in your hands I think and hope is intelligence: the ability to see the machine as more than when you were first led up to it, that you can make it more.”
― Harold Abelson, quote from Structure and Interpretation of Computer Programs (MIT Electrical Engineering and Computer Science)
“A powerful programming language is more than just a means for instructing a computer to perform tasks. The language also serves as a framework within which we organize our ideas about processes. Thus, when we describe a language, we should pay particular attention to the means that the language provides for combining simple ideas to form more complex ideas. Every powerful language has three mechanisms for accomplishing this:
- primitive expressions, which represent the simplest entities the language is concerned with,
- means of combination, by which compound elements are built from simpler ones, and
- means of abstraction, by which compound elements can be named and manipulated as units.”
― Harold Abelson, quote from Structure and Interpretation of Computer Programs (MIT Electrical Engineering and Computer Science)
“If art interprets our dreams, the computer executes them in the guise of programs!”
― Harold Abelson, quote from Structure and Interpretation of Computer Programs (MIT Electrical Engineering and Computer Science)
“Every reader should ask himself periodically ``Toward what end, toward what end?'' -- but do not ask it too often lest you pass up the fun of programming for the constipation of bittersweet philosophy.”
― Harold Abelson, quote from Structure and Interpretation of Computer Programs (MIT Electrical Engineering and Computer Science)
“I’ve had enough of someone else’s propaganda… I’m for truth, no matter who tells it. I’m for justice, no matter who it is for or against. I’m a human being first and foremost, and as such I’m for whoever and whatever benefits humanity as a whole.”
― Malcolm X, quote from The Autobiography of Malcolm X
“Yet the paradox is that scientific methodology is the product of human hands and thus cannot reach some permanent truth. We build scientific theories to organize and manipulate the world, to reduce phenomena into manageable units. Science is based on reproducibility and manufactured objectivity. As strong as that makes its ability to generate claims about matter and energy, it also makes scientific knowledge inapplicable to the existential, visceral nature of human life, which is unique and subjective and unpredictable. Science may provide the most useful way to organize empirical, reproducible data, but its power to do so is predicated on its inability to grasp the most central aspects of human life: hope, fear, love, hate, beauty, envy, honor, weakness, striving, suffering, virtue.”
― Paul Kalanithi, quote from When Breath Becomes Air
“L’amore. Certo, l’amore. Fuoco e fiamme per un anno, cenere per trenta.”
― Giuseppe Tomasi di Lampedusa, quote from The Leopard
“Those words, that voice, had more power over me than any phantom ever could.”
― Richelle Mead, quote from The Ruby Circle
“Sweetheart, I know you think it'll be a cathartic experience and you'll say your piece and everyone will come away the wiser,' says Dad. 'But in real life that doesn't happen. I've confronted enough assholes in my time. They never realize they're assholes. Not once. Whatever you say.”
― Sophie Kinsella, quote from Finding Audrey
BookQuoters is a community of passionate readers who enjoy sharing the most meaningful, memorable and interesting quotes from great books. As the world communicates more and more via texts, memes and sound bytes, short but profound quotes from books have become more relevant and important. For some of us a quote becomes a mantra, a goal or a philosophy by which we live. For all of us, quotes are a great way to remember a book and to carry with us the author’s best ideas.
We thoughtfully gather quotes from our favorite books, both classic and current, and choose the ones that are most thought-provoking. Each quote represents a book that is interesting, well written and has potential to enhance the reader’s life. We also accept submissions from our visitors and will select the quotes we feel are most appealing to the BookQuoters community.
Founded in 2023, BookQuoters has quickly become a large and vibrant community of people who share an affinity for books. Books are seen by some as a throwback to a previous world; conversely, gleaning the main ideas of a book via a quote or a quick summary is typical of the Information Age but is a habit disdained by some diehard readers. We feel that we have the best of both worlds at BookQuoters; we read books cover-to-cover but offer you some of the highlights. We hope you’ll join us.