I have not read Bob's blog, but Bob and I arrived at this 
conclusion at about the same time and we discussed it extensively
during my sabbatical at CMU in 93/94. -- I am not at all surprised
that one opinion reminds you of the other. -- Matthias



On Dec 16, 2011, at 11:57 AM, Jim Wise wrote:

> Matthias Felleisen <matth...@ccs.neu.edu> writes:
> 
>> My hunch is that I forgot my meta-meta-lessons from the 1980s. Back then
>> the standard argument for lazy programming was that 'the regular lambda
>> calculus is uniform and easy to use and you never have to think about 
>> when substitution works'. [This argument applied both for the misleading
>> idea of thinking 'applicative reduction' -- whatever that really is --
>> had anything to do with CBV or the Plotkin-style reasoning.] Worse, when
>> you generalize this to imperative languages, it looked like it all broke
>> down and therefore it wasn't any good either. My reply used to be that 
>> pragmatics of programming comes first and we have got to develop the 
>> reasoning tools for the pragmatically good languages, though with some
>> give and take. [My argument works equally well for axiomatic condemnation
>> of call/cc and friends.]
> 
> This reminds me (tangentially?) of a post from Bob Harper about why lazy
> programming as a default is awful (and by extension why ML is better
> than Haskell for reasoning about code, both in teaching and in real
> world programming -- though the same points could be easily used for
> Racket ):
> 
>  http://existentialtype.wordpress.com/2011/04/24/the-real-point-of-laziness/
> 
> -- 
>                               Jim Wise
>                               jw...@draga.com


_________________________________________________
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev

Reply via email to