[plt-scheme] what's HtDP, what it is NOT

From: Stephen Bloch (sbloch at adelphi.edu)
Date: Mon Feb 23 16:39:00 EST 2009

On Feb 23, 2009, at 13:56, Matthias Felleisen <matthias at ccs.neu.edu>  

> 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.


Posted on the users mailing list.