授課主題 4 The Modern Computing Environment 4 Recursive Problem Solving 4 Symbolic Programming –Language: Lisp (Scheme/Common Lisp) 4 Object-oriented Programming –Common Lisp Object System (CLOS) –Java 4 Tools for Computer Professionals
Overview 4 Computer science is about –the concept of processes, and –ways to describe them. 4 Processes deal with imperative or “How to” knowledge, as opposed to declarative, or “What is” knowledge. –A process is the actual mechanism by which a computation is executed. –A procedure is a means of describing a process.
Sequential Problem Solving 4 To make a peanut butter jelly sandwich 1. Have ingredients ready 2. Hold one slice of bread in hand 3. Open a jar of peanut butter 4. Put peanut butter on bread 5. Repeat Step 4 until enough peanut butter 6. Do 2-5 with Jelly 7. Put two slices of bread together 8. Done ProgramInputOutput
Complexity 4 Once we have developed this language for describing processes, we will want to use it to describe large and complex processes. 4 Engineering tools for controlling complexity. –black box abstraction –conventional interfaces –meta-linguistic abstraction
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. Alan J. Perlis (April 1, February 7, 1990)