in reply to Re^4: cross scope gotos?
in thread cross scope gotos?
> No serious application whatsoever for this nonsense...
sigh, YOU again...
you may use it for
- easily leaving deeply nested recursions, without the need to return step by step
perl -e ' my $x; sub rec { goto STOP if ++$x>10; print $x; rec()};rec();STOP:' 12345678910
- easily defining specific labels and jump-commands in DSLs (Domain Specific Languages) and encapsulating all the logic within the subs.
For instance if you want to emulate and/or compile an assembler language you can easily implement it as valid perl-code then easily using Perl as macro language:
use Assembler::6502; # fictitious module # implementing Mnemonics as subs MARK: LDX 10; ADD 3; macro1(); # Perl sub to include/call mnemonics JSR SUB2; JMP MARK; SUB2: ... ... RET
serious enough?
Cheers Rolf
UPDATE: added examples
|
---|
In Section
Seekers of Perl Wisdom