[merd-devel] upcasting (part1)
Status: Pre-Alpha
Brought to you by:
pixel_
|
From: Pixel <pi...@ma...> - 2002-09-30 17:16:25
|
id !! x -> x
id := x -> x
to_A1 !! A -> A
to_A1 := A -> A
to_A2 !! A -> A
to_A2 := x -> x
to_A3 !! x -> (x !< A) ; x
to_A3 := x -> x
v v.to_A1 v.to_A2 v.to_A3 v.id
value A A A A A
type A A A A A
value A |&| B A A |&| B A |&| B A |&| B
type A A A A A
value A |&| B A A |&| B A |&| B A |&| B
type A |&| B A A A |&| B A |&| B
value B _ _ _ B
type B error error error B
- "to_A2", "to_A3" and "id" are semantically equivalent at runtime
- "to_A1" and "to_A2" have the same type, but not the same semantic
|