Lokale Bindungen

konkret:

(let ((n1 x1) (n2 x2)) y)

abstrakt:

data Exp = ...
| LocalBinding 
    { binders :: [ Binder ] , body :: Exp }
data Binder = 
   Binder { bname :: S.Id, bdefn  :: Exp }

Übersetzung in Applikation/Abstraktion

Was folgt daraus über Sichtbarkeiten?



2010-10-12