<br><br><div class="gmail_quote">On Fri, Jun 7, 2013 at 6:53 PM, Mrzlga <span dir="ltr"><<a href="mailto:bulletproofchest@gmail.com" target="_blank">bulletproofchest@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Timothy,<br>
<br>
How do you get everyone to use:<br>
    a.Cast!Signed<br>
    a.Cast!Unsigned<br>
    a.Cast!Const<br>
    a.Cast!Immutable<br>
    a.Cast!Shared<br>
<br>
And to stop using:<br>
    cast(const)<br>
    cast(immutable)<br>
    cast(shared)<br>
    cast(inout) ?<br>
<br>
And have everyone be consistent about it?<br>
<br>
Remove the cast() ones from the language?<br></blockquote><div><br></div><div>not suggesting deprecating cast(), just suggesting there's no need to extend the language as it can be done in library code, advantageously. It's trivially extensible as I wrote it. However, any language extension has to be re-implemented by each compiler implementation. </div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
And what about variations, 'shared const', 'inout shared', etc?<br></blockquote><div><br></div><div>it's trivial to add to my code a.Cast!"shared const" or a.Cast!SharedConst, etc, as well as more complex ones.<br>
</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
There are some things that should be available to the language, even when no modules are imported. I think dealing with the basic type system is like that.<br>
</blockquote></div><br><div>Not if the syntax sugar provided by the language is no simple than that provided by library solution. I've argued library solution is more consistent with UFCS (see my code). </div><div><br>
</div>