in reply to Using smartmatch with split function
Imposing list context on the split function won’t help, because the smartmatch operator infers the required behaviour only when it finds the righthand side to contain an array, not a list. So you can do this:
17:49 >perl -we "use v5.14; $a = 3456; print 'Yes' if 3 ~~ @{[split(// +, $a)]};" Smartmatch is experimental at -e line 1. Yes 17:49 >
which creates an anonymous array reference from the output of the split and then immediately dereferences it back to an array.
Whether that is really an improvement over using an explicit array is another question...
Hope that helps,
| Athanasius <°(((>< contra mundum | Iustus alius egestas vitae, eros Piratica, |
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: Using smartmatch with split function
by trizen (Hermit) on May 26, 2014 at 09:18 UTC | |
|
Re^2: Using smartmatch with split function
by gurpreetsingh13 (Scribe) on May 26, 2014 at 09:01 UTC |