Equality in E


A surprising number of seemingly separate issues in the design of E all come together in the definition of the equality operations -- security, the reference taxonomy, partial order constraints, the object-passing taxonomy, and the collection classes. E has two equality operations, the predicate same and the function join.

This Chapter uses the notation of the E language, but the Java/ELib programmer should find everything easy to translate.

The Grant Matcher Puzzle Defines the security problem E's equality operations need to solve.
4-Party Partial Orders Defines the concurrency problem E's equality operators need to solve.
Object Sameness When are two objects the same?
Reference Sameness When are two references the same? Reference sameness and object sameness are mutually recursive definitions, but the base cases are mostly in object sameness, which should therefore be read first.
Argument Passing Rules When a reference of a given kind is passed by an invoation of a given kind, what kind of reference is received?
Joining References Eventual mutual acceptability

Unless stated otherwise, all text on this page which is either unattributed or by Mark S. Miller is hereby placed in the public domain.

AltStyle によって変換されたページ (->オリジナル) /