Chris Hanson
More books by Chris Hanson…
“A good program must be written many times. This is true of the programs we show. The first draft may not clearly separate out the concerns, but by making that draft the programmer learns the structure of the problem. We will show two different implementations, which will reveal the evolution of the program as we identify shortcomings in our draft.”
― Software Design for Flexibility: How to Avoid Programming Yourself into a Corner
― Software Design for Flexibility: How to Avoid Programming Yourself into a Corner
“The most powerful kind of code constructs other code that has been bundled with just the right amount of curated data; such a bundle is not just a “function pointer” but a closure (in a functional language) or an object (in an object-oriented language).”
― Software Design for Flexibility: How to Avoid Programming Yourself into a Corner
― Software Design for Flexibility: How to Avoid Programming Yourself into a Corner
“Regular expressions are widely used for string matching. Although regular-expression systems are derived from a perfectly good mathematical formalism, the particular choices made by implementers to expand the formalism into useful software systems are often disastrous: the quotation conventions adopted are highly irregular; the egregious misuse of parentheses, both for grouping and for backward reference, is a miracle to behold. In addition, attempts to increase the expressive power and address shortcomings of earlier designs have led to a proliferation of incompatible derivative languages.”
― Software Design for Flexibility: How to Avoid Programming Yourself into a Corner
― Software Design for Flexibility: How to Avoid Programming Yourself into a Corner
Is this you? Let us know. If not, help out and invite Chris to Goodreads.



