Actually what I meant was

my Real $x = 3; $x = Nil; $x.WHO.say

What you must read undoubtedly are this: 
https://docs.perl6.org/language/containers 
<https://docs.perl6.org/language/containers> and this: 
https://opensource.com/article/18/8/containers-perl-6 
<https://opensource.com/article/18/8/containers-perl-6>

> 16 вер. 2018 р. о 22:31 ToddAndMargo <toddandma...@zoho.com> написав(ла):
> 
>>>> 16 вер. 2018 р. о 22:11 Curt Tilmes <c...@tilmes.org 
>>>> <mailto:c...@tilmes.org>> написав(ла):
>>>> 
>>>> It isn't changing anything.
>>>> 
>>>> You've still got a box ('container') that can only hold something 'Real'.
>>>> 
>>>> You just happen to have a value in that box that is a 'Rat'.
>>>> 
>>>> It is perfectly fine to put a Rat value in a Real box, because a Rat is 
>>>> also a Real (does the 'Real' role).
>>>> 
>>>> You can still stick some other Real in the box, and you still can't stick 
>>>> anything that isn't a Real in the box.
>>>> 
>>>> 
>>>> 
>>>> On Sun, Sep 16, 2018 at 10:07 PM ToddAndMargo <toddandma...@zoho.com 
>>>> <mailto:toddandma...@zoho.com>> wrote:
>>>> 
>>>>    On 09/16/2018 06:50 PM, Curt Tilmes wrote:
>>>>    > Note that an object that is a Rat also does Real (see
>>>>    > https://docs.perl6.org/type/Rat#Type_Graph)
>>>>    >
>>>>    > say Rat ~~ Real
>>>>    >
>>>>    > True
>>>>    >
>>>>    > Your're making a box that takes a Real, then putting a Rat (that
>>>>    also does Real) into that box.
>>>>    >
>>>>    > It then says "yes, you've got a Rat in there".
>>>>    >
>>>>    >
>>>> 
>>>>    Why is it changing thing on the fly when I tell it not to?
>>>>    I claim foul !!!!!!    AAAAAA HHHHHHH !!!
>>>> 
>>> Best regards,
>>> Vadim Belman
> 
> On 09/16/2018 07:18 PM, Vadim Belman wrote:
>> I would add on top of Curt's explanation. Try assigning Nil to $x and then 
>> ask for its type. You'll get your Real back!
> 
> 
> 
> I am see it but I am not seeing your point:
> 
> $ p6 'my Real $x= Nil; dd $x;'
> Real $x = Real
> 
> $ p6 'my Real $x= Nil; $x = 3.1415; dd $x;'
> Rat $x = 3.1415
> 
> Why is it changing the type on the fly after
> I defined it?
> 

Best regards,
Vadim Belman

Reply via email to