Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

Re: discussion: What should split( /PATTERN/, EXPR, 0 ) return better? (split-LIMIT = count and/or flag)

by LanX (Saint)
on Oct 12, 2017 at 21:43 UTC ( [id://1201272]=note: print w/replies, xml ) Need Help??


in reply to discussion: What should split( /PATTERN/, EXPR, 0 ) return better?


UPDATE
please see my other post here: Re: discussion: What should split( /PATTERN/, EXPR, 0 ) return better? (LIMIT is consistent! ) which makes most of the following reasoning obsolete (the code still works)


Again I was struggling to understand what your question is (or rather your meditation).

Yes I agree that it's not very orthogonal, if LIMIT > 0 is a count and LIMIT == 0 rather means undef like in "No Limit" .*

I don't see where this concept stems from, probably some sed or awk semantic, (probably because undef is missing there ?)²

But I agree with afoken that it's too late to change it.

Anyway I would never have tried to solve it that way, rather

DB<1> $str = join " ", 1..5 DB<2> for $k (0..6) { my $sum=0; $sum+= $_ for (split ' ', $str)[0.. +$k-1] ; print "$sum\n";} 0 1 3 6 10 15 15

or rather

DB<6> @split = (split ' ', $str) DB<7> for $k (0..6) { my $sum=0; $sum+= $_ for @split[0..$k-1]; prin +t "$sum\n";} 0 1 3 6 10 15 15

Cheers Rolf
(addicted to the Perl Programming Language and ☆☆☆☆ :)
Je suis Charlie!

update

*) and you shouldn't forget that LIMIT =-1 has even one more non-count meaning

²) couldn't find similarities in awk or sed, but the reason is most probably that 0 and undef are both false in Perl, and the designers wanted to keep the symmetry.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://1201272]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others having a coffee break in the Monastery: (3)
As of 2024-03-29 02:26 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found