Next | Types Are Theorems; Programs Are Proofs | 7 |

*b*→*a**is not*inhabitedHowever

*a*→ (*b*→*a*)*is*inhabited:

// three ways to write the same thing const a b = a :: a -> (b -> a) const a = \b -> a :: a -> (b -> a) const = \a -> (\b -> a) :: a -> (b -> a)

Next | Next |