next up previous contents
Next: The rule Up: The (untyped) lambda calculus Previous: Syntax   Contents

Life without types

At this point, we should remind ourselves that these intended meanings do not stop us from constructing seemingly nonsensical expressions such as $x x$.

At first sight, it seems strange that we should try to embark on a syntax for functions in which there is no notion of ``type''. However, untyped formalisms are familiar to us

The point is that we have a syntax for representing data (sets, bit strings) and we have rules for manipulating these representations. Some representations are more meaningful than others, but the manipulation rules can be applied uniformly to both the meaningful and the meaningless representations. All we ask is that if the original data represents a meaningful value, then, after manipulation, it still represents a meaningful value.

A similar view is taken in the lambda calculus--for instance $M M'$ represents application if the structure of the expression $M$ corresponds to a ``function''. Otherwise, we don't care what this construction means (e.g., if $M M'$ is $x x$, as describe earlier).


next up previous contents
Next: The rule Up: The (untyped) lambda calculus Previous: Syntax   Contents
Madhavan Mukund 2004-04-29