<div dir="ltr">I am referring to the situations when someone uses 'Ptr a', but the Ptr does not point to anything of type 'a'. If I write 'Ptr Word8', but I am pointing to a Char, then that is not true.</div><br><div class="gmail_quote"><div dir="ltr">On Fri, Oct 26, 2018 at 4:08 PM Sven Panne <<a href="mailto:svenpanne@gmail.com">svenpanne@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_quote"><div dir="ltr">Am Fr., 26. Okt. 2018 um 20:00 Uhr schrieb Daniel Cartwright <<a href="mailto:chessai1996@gmail.com" target="_blank">chessai1996@gmail.com</a>>:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">[...] Eventually any non-user-facing functions that use 'Ptr LyingType' should be switched from using 'Ptr' to 'Addr'. [...]</div></blockquote><div><br></div><div>Again my question is: Why? When someone sees a "Ptr a" or "Ptr ()", it's blindingly obvious that this is equivalent to Addr, i.e. you need some additional information what that thing is pointing to or you don't care about what's at that location. This is not "lying", quite the opposite. </div><div><br></div><div>You can turn the whole proposal 180 degrees around: Let's nuke "Addr" in favor of "Ptr a"/"Ptr ()"! :-) That would even get rid of a whole type, something the current proposal doesn't achieve. Addr is strictly less powerful than Ptr, so why keep the former?</div></div></div>
</blockquote></div>