Go backward to Typed Parameters Go up to Top Go forward to 2. Version |
Type-equivalence checker:
T': Type-structure -> Environment ->
(Expressible-value + Errvalue)
(T'[[T]]e x)
D[[proc I1(I2:T) = C]] = lambda e. lambda s.
((updateenv [[I1]]
inProc(lambda x. cases (T'[[T]]e x) of
isExpressible-value(x) ->
C[[C]](updateenv [[I]] x e)
[] isErrvalue() -> signalerr end)
e), (return s))