I just spotted a grave mistake in my earlier mail:

the --> constraints are validated at *run* time, not *compile* time;
that's a very big difference, and an important one. Of course "every
time a sub or method returns" doesn't make much sense if i had meant
"compile time", but I felt i should really point it out before causing
too much confusion.

On 04/10/2018 03:07, ToddAndMargo wrote:
> Hi All,
>
> In another thread, Timo wrote me:
>
>        The "-->" part of the signature is optional. If there isn't
>        one, it defaults to Mu, which is the type that everything
>        conforms to, i.e. the sub or method that either has "--> Mu"
>        explicitly, or has it by leaving it out, may return
>        absolutely whatever it wants.
>
>        After all, the "-->" part is a constraint, and it gets
>        validated at compile time every time a sub or method
>        returns.
>
> I got to thinking, some routines do not return anything.  Without
> the "-->" constraint, how am I to determine if something is
> being returned?
>
> Yours in confusion,
> -T

Reply via email to