Walls And Mirrors

From Wikipedia, the free encyclopedia

Walls And Mirrors is an influential computer science textbook, for undergraduates taking a second computer science course (typically on the subject of data structures and algorithms), written by Paul Helman and Robert Veroff. The book has endured as a standard textbook through many editions because it strikes a balance between being too mathematically rigorous and formal - such as (for example) The Art of Computer Programming or MIT's Introduction to Algorithms - and also 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++ take this to its logical conclusion.

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.

The first edition, which used the language Pascal, was published in 1986.

Walls And Mirrors, Modula-2 Edition, 1988.
Walls And Mirrors, Modula-2 Edition, 1988.

An edition which 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 late 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 edition of the book. The current author is Frank M. Carrano (5th Ed.). The recently published second edition of the Java version removed the name "Walls and Mirrors".

[edit] External links