Jonathan Cast <[EMAIL PROTECTED]> wrote: > On 10 Jan 2008, at 7:55 AM, Achim Schneider wrote: > > > "Daniel Yokomizo" <[EMAIL PROTECTED]> wrote: > > > >> On Jan 10, 2008 3:36 PM, Achim Schneider <[EMAIL PROTECTED]> wrote: > >>> [EMAIL PROTECTED] wrote: > >>> > >>>> Niko Korhonen writes: > >>>> > >>>> ... > >>>>> Although it could be argued that laziness is the cause of some > >>>>> very obscure bugs... <g> > >>>>> Niko > >>>> > >>>> Example, PLEASE. > >>>> > >>> [1..] == [1..] > >>> > >>> , for assumed operational semantics of ones own axiomatic > >>> semantics. Bugs are only a misunderstanding away. > >> > >> It has nothing to do with laziness, but with using an algebraic > >> function (==) with a codata structure (stream). If Haskell kept > >> laziness but enforced separation of data and codata such code > >> wouldn't > >> compile. Lazy lists or streams never are a problem, but you can't > >> (generically) fold codata. > >> > > Exactly. Denotationally it hasn't, but axiomatically it has. > > Because it > > looks like mathematical terms one can easily get lost in believing > > it reduces like mathematics, too. > > What kind of mathematics? I don't know of any mathematics where > algebraic simplifications are employed without proof of the > underlying equations (in some denotational model). > Mathematics as, as my professor put it, "Solving by staring".
-- (c) this sig last receiving data processing entity. Inspect headers for past copyright information. All rights reserved. Unauthorised copying, hiring, renting, public performance and/or broadcasting of this signature prohibited. _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe