You can read https://en.wikipedia.org/wiki/Option_type for more information
Tell me if you find any of the Perl 6 section confusing. https://en.wikipedia.org/wiki/Option_type#Perl_6 On Fri, Sep 14, 2018 at 6:21 AM Todd Chester <toddandma...@zoho.com> wrote: > > >> On Fri, Sep 14, 2018 at 7:08 AM Todd Chester <toddandma...@zoho.com > >> <mailto:toddandma...@zoho.com>> wrote: > >> > >> > >> > >> On 09/14/2018 04:01 AM, Simon Proctor wrote: > >> > :D is a type constraint requiring an instantiated (or defined) > >> object of > >> > the given type (or a subtype of it). > >> > > >> > :U is a type constraint saying you have a container specified for > >> the > >> > given type that hasn't been instantiated. > >> > >> Hi Simon, > >> > >> Your went over my head. What the heck is "instantiated"? > >> > >> https://www.dictionary.com/browse/instantiate > >> verb (used with object), in·stan·ti·at·ed, in·stan·ti·at·ing. > >> > >> to provide an instance of or concrete evidence in support > >> of (a theory, concept, claim, or the like). > >> > >> I am not connecting the dots. > >> > >> Is there a list of these guys somewhere, or are these the only two? > >> > >> -T > >> > > > > On 09/14/2018 04:16 AM, Curt Tilmes wrote: > > See > > https://docs.perl6.org/type/Signature#Constraining_defined_and_undefined_values > > > > If I say "my Int $x", > > $x is now an Int, but an undefined Int. > > > > If I say "my Int $x = 42", > > $x is an Int, but set to a defined value, 42. > > > > Both are Int: > > > > say 42 ~~ Int; # OUTPUT: «True» > > say Int ~~ Int; # OUTPUT: «True» > > > > > > There are three type constraint suffixes you can add -- :D (defined), :U > > (undefined) or :_ (defined or undefined) > > > > # Checking a type object > > say Int ~~ Any:D; # OUTPUT: «False» > > say Int ~~ Any:U; # OUTPUT: «True» > > say Int ~~ Any:_; # OUTPUT: «True» > > # Checking an object instance > > say 42 ~~ Any:D; # OUTPUT: «True» > > say 42 ~~ Any:U; # OUTPUT: «False» > > say 42 ~~ Any:_; # OUTPUT: «True» > > > > > > > > Hi Curt, > > Beautiful explanation! I am writing it down tomorrow > in my keepers file. > > Thank you! > > -T