> >If the databases *do* change over time, then there are two > >possibilities: > > > > 1. the contents change due to external factors only > > 2. the contents change because this program doing the writing > > > >in (1), you can still pretend the interface is pure, by > imagining that > >all the changes happened earlier. This works as long as you > only read > >the external data once. > > Isn't there the possibility of inlining causing a read to > happen twice even if it only appears to happen once?
In theory that would be a valid transformation, but in practice no compiler would duplicate arbitrary computations. GHC certainly doesn't. Cheers, Simon _______________________________________________ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell