[Haskell] Fwd: Mutually dependent functions
g9ks157k at acme.softbase.org
Tue Jun 12 11:19:37 EDT 2007
Am Dienstag, 12. Juni 2007 11:51 schrieb David House:
> Another nice way to think about this is in terms of fixed points. Remember
> that an equation like:
> numbers = 1 : map (1 +) numbers
> Is equivalent to a version using fix:
> numbers = fix (\ns -> 1 : map (1 +) ns)
> So numbers gets assigned the fixpoint of the function \ns -> 1 : map (1 +)
It is always the *least* fixpoint. For example, (0 *) has the fixpoint _|_
(because 0 * _|_ = _|_) but every integer is also a fixpoint of it.
However, _|_ is less than all those integers in the sense of “less defined”,
and so the result of fix (0 *) is _|_.
More information about the Haskell