From 9d420f4bd1ec39e088d4c322c00eb974420b1c8b Mon Sep 17 00:00:00 2001 From: Ralf Jung Date: Wed, 22 Aug 2018 20:01:21 +0200 Subject: [PATCH 1/1] tweak the slogan --- personal/_posts/2018-08-22-two-kinds-of-invariants.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/personal/_posts/2018-08-22-two-kinds-of-invariants.md b/personal/_posts/2018-08-22-two-kinds-of-invariants.md index b403c70..a90dc47 100644 --- a/personal/_posts/2018-08-22-two-kinds-of-invariants.md +++ b/personal/_posts/2018-08-22-two-kinds-of-invariants.md @@ -180,7 +180,7 @@ My gut feeling is that it should not be (i.e., validity should require that `i32 I have talked about two kinds of invariants that come with every type, the safety invariant and the validity invariant. For unsafe code authors, the slogan summarizing this post is: -> *You must always be valid, but you must not always be safe.* +> *You must always be valid, but you must only be safe in safe code.* I think we have enough experience writing unsafe code at this point that we can reasonably discuss which validity invariants make sense and which do not -- and I think that it is high time that we do so, because many unsafe code authors are wondering about these exact things all the time. -- 2.30.2