[Haskell-cafe] A Mascot
g9ks157k at acme.softbase.org
Thu Nov 24 11:19:23 CET 2011
Am Mittwoch, den 16.11.2011, 10:46 +0100 schrieb Bas van Dijk:
> Is ⊥ the right symbol to express the non-strict evaluation of the
> language? Is it true that non-strict evaluation requires that ⊥
> inhabits every type?
In typical strict languages, ⊥ also inhabits every type. The difference
is that the domains of all types except function types are flat. That
is, they don’t contain any partially defined values like ⊥ : ⊥, but
only ⊥ and completely defined values.
Where a Haskell expression would result in a partially defined value,
the same expression in a corresponding strict language would result
in ⊥. So strict languages are “more ⊥” than Haskell. Thus I cannot see
why ⊥ should be used as a symbol for non-strictness at all.
More information about the Haskell-Cafe