Concrete Abstractions: An Introduction to Computer Science Using Scheme

Front Cover
Max Hailperin, 1999 - Computers - 670 pages
CONCRETE ABSTRACTIONS offers students a hands-on, abstraction-based experience of thinking like a computer scientist. This text covers the basics of programming and data structures, and gives first-time computer science students the opportunity to not only write programs, but to prove theorems and analyze algorithms as well. Students learn a variety of programming styles, including functional programming, assembly-language programming, and object-oriented programming (OOP). While most of the book uses the Scheme programming language, Java is introduced at the end as a second example of an OOP system and to demonstrate concepts of concurrent programming.
 

Common terms and phrases

Popular passages

Page 43 - Christmas my true love sent to me: Two Turtle Doves and a Partridge in a Pear Tree On the third day of Christmas my true love sent to me: Three French Hens Two Turtle Doves and a Partridge in a Pear Tree...
Page 225 - Respect the privacy of others. Computing and communication technology enables the collection and exchange of personal information on a scale unprecedented in the history of civilization. Thus there is increased potential for violating the privacy of individuals and groups. It is the responsibility of professionals to maintain the privacy and integrity of data describing individuals. This includes taking precautions to ensure the accuracy of data, as well as protecting it from unauthorized access...
Page 221 - The level of a node is the length of the path from the root to the node plus 1, which is the number of nodes in the path.
Page 58 - Perfect Numbers A number is said to be perfect if it is equal to the sum of its divisors other than itself, eg, 1+2 + 4 + 7+14 = 28. The lowest perfect number is 6 (1 +2 + 3). The highest known, and the 30th so far discovered, is (2216'°"-1) x 22'6'090.
Page 393 - On a scale of 1 to 10, with 10 being the highest...
Page 240 - The case expression matches this item if the value of the expression is greater than or equal to the lower bound and less than or equal to the upper bound. A flowchart indicating how a case construct is executed appears in Figure 2-2. Some simple examples follow. select case (dice) case (2:3, 12) print *, "You lose!
Page 221 - The depth of a node is the length of the path from the root to that node, where we define the length of a path to be the number of edges that we passed along.
Page 409 - The cost of a solution is the sum of the costs of the treatment plants and of the pipes.
Page 213 - Binary search tree: A binary search tree is either empty or it consists of three parts: the root, the left subtree, and the right subtree.
Page 226 - ... or bona fide authorization related to system operation and maintenance. User data observed during the normal duties of system operation and maintenance must be treated with strictest confidentiality, except in cases where it is evidence for the violation of law, organizational regulations, or this Code.

Bibliographic information