You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
These were meant to correspond to HLL flow control, like tcl's [break] and [continue], but it seems that CONTROL_LOOP_NEXT and CONTROL_LOOP_LAST were added as well (and those are in use by NQP, etc.).
I don't particularly care which pair we keep, but having both sets is wrong.
19:40 <+dalek> TT #1339 created by coke++: eliminate redundant exceptions CONTROL_CONTINUE and CONTROL_BREAK
19:41 <@tene> Coke: in Perl 6, at least, break is different from last
19:41 <@coke> ... how?
19:42 <@tene> break is used to exit the innermost containing construct that sets $_
19:42 <@tene> like a 'given' block.
19:43 <@tene> and 'continue' is used to fall out of a 'when' block without throwing a 'break' exception.
19:43 <@coke> "fall out" ?
19:43 <@DukeLeto> Tene,Coke: Thanks guys, you got me unstuck!
19:43 <@tene> Perl 6 'when' blocks end with an implied 'break'
19:43 <@coke> (makes it sound like break again.)]
19:43 <@coke> Tene: I think your break is not my break.
19:44 <@tene> so: when 1 { do stuff; } default { do more stuff; }
19:44 <@tene> the 'default' doesn't get executed.
19:44 <@tene> but: when 1 { do stuff; continue; } default { do more stuff; }
19:44 <@tene> the default block does get executed
19:44 <@coke> that continue is also not like my continue.
19:45 <@tene> So the tcl continue/break are the Perl 6 next/last
19:45 <@coke> so you can keep break and continue, I suppose, but the way you describe them there are useless to me.
19:45 <@coke> just annoying that I "reserved" them and they were co-opted. :P
19:45 <@tene> It's not the first time that things have different names in tcl and perl 6
19:45 <@coke> be nice if these were documented. =-)
19:45 <@tene> Where would you expect to find that?
19:46 <@coke> runtime/parrot/include/except_types.pasm
19:46 <@tene> Oh! I know! I'll document it in the ticket rejection!
19:46 <@coke> or perhaps in the C enum that generated it.
19:46 <@tene> that should be sufficient, right?
19:46 <@coke> but the .pasm is the file I'm actually using.
19:46 <@coke> necessary but not sufficient.
These were meant to correspond to HLL flow control, like tcl's [break] and [continue], but it seems that CONTROL_LOOP_NEXT and CONTROL_LOOP_LAST were added as well (and those are in use by NQP, etc.).
I don't particularly care which pair we keep, but having both sets is wrong.
Originally http://trac.parrot.org/parrot/ticket/1339
The text was updated successfully, but these errors were encountered: