Walls and Mirrors explained
Walls and Mirrors |
Author: | Paul Helman and Robert Veroff |
Subject: | Computer science |
Published: | 1986 |
Media Type: | Print |
Isbn: | 0-8053-8940-7 |
Isbn Note: | 1st edition |
Dewey: | 001.642 |
Congress: | QA76.6 |
Walls And Mirrors is a computer science textbook, for undergraduates taking a second computer science course (typically on the subject of data structures and algorithms), originally written by Paul Helman and Robert Veroff. The book attempts to strike a balance between being too mathematically rigorous and formal, and being so informal, practical, and hands-on that computer science theory is not taught.
The "walls" of the title refer to the abstract data type (ADT) which has a wall between its public interface and private implementation. Early languages like Pascal did not build this wall very high; later languages like Modula-2 did create a much stronger wall between the two; and object-oriented languages such as C++ and Java implement walls using the class concept.
The "mirrors" of the title refer to recursion. The idea is of looking at a reflection in two mirrors placed in opposition to one another, so a repeated image is reflected smaller and smaller in them.
Editions
The first edition, which used the language Pascal, was published in 1986.
An edition that used Modula-2 was published in 1988. Modula-2 had much better support for the sort of ADT the book taught than Pascal.
Later editions from the mid-1990s and the 2000s used C++ and Java, reflecting a fundamental shift in how computer science was taught. The original authors' names have been removed from the most recent editions of the book.
Publication history
- Walls and Mirrors, Intermediate Problem Solving and Data Structures (Pascal edition) (1986), Paul Helman and Robert Veroff. (Benjamin Cummings Publishing Co.)
- Walls and Mirrors, Intermediate Problem Solving and Data Structures (Modula-2 edition) (1988), Paul Helman and Robert Veroff. (Benjamin Cummings Publishing Co.)
- Intermediate Problem Solving and Data Structures: Walls and Mirrors, Second Pascal edition, (1991), Paul Helman, Robert Veroff, and Frank M. Carrano. (Benjamin Cummings Publishing Co.)
- Data Structures and Problem Solving with Turbo Pascal: Walls and Mirrors, (1993), Frank M. Carrano, Paul Helman, and Robert Veroff. (Benjamin Cummings Publishing Co.)
- Data Abstraction and Problem Solving with C++: Walls and Mirrors, (1995), Frank M. Carrano, Paul Helman, and Robert Veroff. (Benjamin Cummings Publishing Co.)
- Data Abstraction and Problem Solving with C++: Walls and Mirrors, Second edition, (1998), Frank M. Carrano, Paul Helman, and Robert Veroff. (Addison Wesley Longman, Inc.)
- Data Abstraction and Problem Solving with Java: Walls and Mirrors, (2001), Frank M. Carrano and Janet J. Prichard. . (Addison Wesley Longman, Inc.)
- Data Abstraction and Problem Solving with C++: Walls and Mirrors, Third edition, (2002), Frank M. Carrano and Janet J. Prichard. (Pearson Education, Inc.)
- Data Abstraction and Problem Solving with Java: Walls and Mirrors, Updated edition (2004), Frank M. Carrano and Janet J. Prichard. (.)
- Data Abstraction and Problem Solving with C++: Walls and Mirrors, Fourth edition, (2005), Frank M. Carrano. (Pearson Education, Inc.)
- Data Abstraction and Problem Solving with Java: Walls and Mirrors, Second edition, (2006), Frank M. Carrano and Janet J. Prichard. . (Pearson/Addison Wesley)
- Data Abstraction and Problem Solving with C++: Walls and Mirrors, Fifth edition, (2007), Frank M. Carrano. . (Pearson Education, Inc.)
- Data Abstraction and Problem Solving with Java: Walls and Mirrors, Third edition, (2011), Janet J. Prichard and Frank M. Carrano. . (Addison Wesley, an imprint of Pearson)
- Data Abstraction and Problem Solving with C++: Walls and Mirrors, Sixth edition, (2013), Frank M. Carrano and Timothy M. Henry. . (Pearson Education, Inc.)
- Data Abstraction and Problem Solving with C++: Walls and Mirrors, Seventh edition, (2017), Frank M. Carrano and Timothy M. Henry. . (Pearson Education, Inc.)