[plt-scheme] what's HtDP, what it is NOT
On Feb 23, 2009, at 13:56, Matthias Felleisen <matthias at ccs.neu.edu>
wrote:
> I wrote:
>> In HtDP, we introduce a data type, then some patterns for how to
>> test and code for that data type. These patterns ...
>
And Matthias replied:
> Once again, HtDP is
>
> NOT about patterns
Not in the sense of memorizing that this particular data type goes
with that particular code, no. But a data type defined by parts (e.g.
a struct) tells you certain things about any function that operates on
that data type. A type defined by choices (i.e. polymorphism)
likewise tells you something about the code to operate on it. A self-
referential type tells you something about the code to operate on it.
I think many people in the Patterns community would look at the
templates for structural recursion on lists, trees, etc. and say "yep,
that's a coding pattern."
> NOT a form of test-driven design
Neither is a subset of the other, but they have considerable overlap
in their central tenets.
> NOT a form of 'code by example'
Of course not.
Steve