http://qs321.pair.com?node_id=786073


in reply to Re^4: About a piece of code
in thread About a piece of code

Imagine you're The Soup Nazi, a patron steps forward in line (readline) with a giant \n on their forehead, and you yell NEXT! and kick them out. Then the next person steps forward with a giant "Foo\n" on their forehead. Maybe you give them soup, maybe you make them pay for bread, maybe they object and you yell "No soup for you!" and kick them out :)

nosoup.pl

#!/usr/bin/perl -- while(<DATA>){ /^\s+$/ and next; if(/George/){ print "No soup for you!\n"; } print "What soup you want? $_"; } __DATA__ Kramer Elaine George
and Devel::Trace output
$ perl -d:Trace nosoup.pl >> nosoup.pl:2: while(<DATA>){ >> nosoup.pl:3: /^\s+$/ and next; >> nosoup.pl:3: /^\s+$/ and next; >> nosoup.pl:4: if(/George/){ >> nosoup.pl:7: print "What soup you want? $_"; What soup you want? Kramer >> nosoup.pl:3: /^\s+$/ and next; >> nosoup.pl:3: /^\s+$/ and next; >> nosoup.pl:4: if(/George/){ >> nosoup.pl:7: print "What soup you want? $_"; What soup you want? Elaine >> nosoup.pl:3: /^\s+$/ and next; >> nosoup.pl:3: /^\s+$/ and next; >> nosoup.pl:4: if(/George/){ >> nosoup.pl:5: print "No soup for you!\n"; No soup for you! >> nosoup.pl:7: print "What soup you want? $_"; What soup you want? George