See Original text in context
multi sub prompt()multi sub prompt()
Prints $msg
to $*OUT
handle if $msg
was provided, then gets a line of input from $*IN
handle. By default, this is equivalent to printing $msg
to STDOUT, reading a line from STDIN, removing the trailing new line, and returning the resultant string. As of Rakudo 2018.08, prompt
will create allomorphs for numeric values, equivalent to calling val prompt
.
my = prompt "What's your name? ";say "Hi, $name! Nice to meet you!";my = prompt("Say your age (number)");my Int = ;my Str = ;
In the code above, $age
will be duck-typed to the allomorph IntStr if it's entered correctly as a number.