-
Notifications
You must be signed in to change notification settings - Fork 61
Closed
Labels
A-validityTopic: Related to validity invariantsTopic: Related to validity invariantsC-terminologyCategory: Discussing terminology -- which term to use, how to define it, adding it to the glossaryCategory: Discussing terminology -- which term to use, how to define it, adding it to the glossary
Description
It has been noted on several occasions, e.g. rust-lang/rust#53491 (comment) and rust-lang/rust#53491 (comment) that "valid" is prone to confusion with "safe" due to the way the former sounds. In particular, it raises the question "Valid with respect to what"?
Thus it is probably a good idea to rename one or the other into something else.
@RalfJung suggested "initialization invariant" (because any initialized T
must satisfy such invariants) as a replacement of "validity invariant" while I suggested "machine invariant" (because it signifies the invariants the abstract machine requires of a T
). If we rename validity to either of those then "safety" might not need renaming; but if it does, "type system invariant" may be one candidate.
Metadata
Metadata
Assignees
Labels
A-validityTopic: Related to validity invariantsTopic: Related to validity invariantsC-terminologyCategory: Discussing terminology -- which term to use, how to define it, adding it to the glossaryCategory: Discussing terminology -- which term to use, how to define it, adding it to the glossary