> I think maybe I don't understand how <<>> is used in a
and how <<>> differs from a ""
<<>> is quoteword, no commas needed. You get back a list. "" create a
string, you get back a single thing.
my $z=<<xyz{$x}def>>;
(xyz abc def)
is the same as
my $z=<<xyz $x def>>;
(xyz abc def)
> my $x = "ab";
ab
> my $z=<<xyz $x def>>;
(xyz ab def)
> my $y = "xxy $x def";
xxy ab def
> $z.WHAT
(List)
> $y.WHAT
(Str)
> my $q = ["xyz", $x, "def"];
[xyz ab def]
> $q.WHAT
(Array)
> my $r = ("xyz", $x, "def");
(xyz ab def)
> $r.WHAT
(List)
On Wed, Oct 4, 2017 at 2:25 PM, ToddAndMargo <[email protected]> wrote:
>
> On Wed, Oct 4, 2017 at 1:29 PM, ToddAndMargo <[email protected]
>>> <mailto:[email protected]>> wrote:
>>>
>>> On 10/02/2017 01:18 PM, ToddAndMargo wrote:
>>>
>>> Hi All,
>>>
>>> I am writing up a keeper note on <<>> and such. This example
>>> puzzles me. Why the space?
>>>
>>>
>>> Example of <<>> (double quote and allow insertion of variables
>>> into strings):
>>>
>>>
>>> $ perl6 -e 'my $x="abc"; my $y=<<xyz{$x}def>>; say "\$x=$x
>>> \$y=$y";'
>>> $x=abc $y=xyz abc def
>>>
>>>
>>>
>>> Many thanks,
>>> -T
>>>
>>>
>>>
>>> Hi Guys,
>>>
>>> I am trying to document for myself what the difference is
>>> between "" and <<>>.
>>>
>>> Maybe I should rephrase the question. Why are these
>>> two different? Why the spaces when using <<>>?
>>>
>>> $ perl6 -e 'my $x="abc"; my $y=<<xyz{$x}def>>; say "\$x=$x \$y=$y";'
>>> $x=abc $y=xyz abc def
>>>
>>> $ perl6 -e 'my $x="abc"; my $y="xyz{$x}def"; say "\$x=$x \$y=$y";'
>>> $x=abc $y=xyzabcdef
>>>
>>>
>>> -T
>>>
>>>
>
>
>
> On 10/04/2017 11:45 AM, Andy Bach wrote:
>
>> Why the spaces when using <<>>?
>>
>> in REPL
>> > my $x="abc"; my $y="xyz{$x}def"; say "\$x=$x \$y=$y"
>> $x=abc $y=xyzabcdef
>> > $y.WHAT
>> (Str)
>> > $x.WHAT
>> (Str)
>> > my $z=<<xyz{$x}def>>;
>> (xyz abc def)
>> > $z.WHAT
>> (List)
>>
>> <<>> makes a list, the { } make a closure, so you've got 3 things in the
>> list; "xyz", the value of $x ("abc"), and "def"
>> > $z=<<xyz$xdef>>;
>> ===SORRY!=== Error while compiling:
>> Variable '$xdef' is not declared
>> ------> $z=<<xyz⏏$xdef>>;
>>
>> > $z=<<xyz$x def>>;
>> (xyz abc def)
>>
>
>
> Love that "what" command.
>
> I think maybe I don't understand how <<>> is used in a
> and how <<>> differs from a ""
>
--
a
Andy Bach,
[email protected]
608 658-1890 cell
608 261-5738 wk