That was the behaviour before those commits. It was explicitly changed
to how it works now, I believe.


On 25/02/18 16:54, yary wrote:
> Should "say" handle junctions and wrap them with ".gist?" Seems like
> it ought to, but maybe that introduces problems.
>
> -y
>
> On Sun, Feb 25, 2018 at 11:48 AM, Timo Paulssen <t...@wakelift.de
> <mailto:t...@wakelift.de>> wrote:
>
>     That's right. Say will also call .gist on what you pass to it, but
>     say doesn't declare that it handles junctions, so before it can
>     call .gist on what it gets, it will be handled by the
>     auto-threader, so you'll get say, and therefor .gist, called on
>     everything inside the junction and the result will be re-combined
>     into a junction again.
>
>
>     On 25/02/18 12:05, yary wrote:
>>     I don't have Rakudo handy, is the answer to "how to make
>>     junctions show as Sean expects"
>>
>>     say $junction.gist ;
>>
>>     ?
>>
>>     -y
>>
>>     On Sat, Feb 24, 2018 at 7:27 PM, Timo Paulssen <t...@wakelift.de
>>     <mailto:t...@wakelift.de>> wrote:
>>
>>         I'm pretty sure you're running up against this change in rakudo:
>>
>>         https://github.com/rakudo/rakudo/blob/master/docs/ChangeLog#L203
>>         <https://github.com/rakudo/rakudo/blob/master/docs/ChangeLog#L203>
>>         >     + Made print/say/put/note handle junctions correctly
>>         [07616eff]
>>         >        [9de4a60e][8155c4b8][3405001d]
>>
>>         the relevant commits being:
>>
>>         https://github.com/rakudo/rakudo/commit/07616eff
>>         <https://github.com/rakudo/rakudo/commit/07616eff>
>>         > Make print/say/put/note handle junctions correctly
>>         >
>>         > - well, for some value of correctly
>>         > - introducing helper method Junction.THREAD
>>         > - to be used if you have a multi with **@foo as a signature
>>         > - print/say/put/note now return Junction if given a Junction
>>
>>         https://github.com/rakudo/rakudo/commit/3405001d
>>         <https://github.com/rakudo/rakudo/commit/3405001d>
>>         > Make put/print "a",any(<b c d>) work
>>         >
>>         > - we already had a candidate for handling a Junction, but
>>         not if part
>>         of a List
>>         > - simplified the code to let List.join do the hard work
>>         > - which automatically takes care of the Junction issue
>>
>>         You're not getting junctions "stringified as one alternative
>>         per line",
>>         rather you're getting the default auto-threading that
>>         junctions do and
>>         the say is being run once per value in the junction.
>>
>>         Hope that clears things up
>>           - Timo
>>
>>
>
>

Reply via email to