How can I use __DATA__ twice?
To use the DATA filehandle twice you need to rewind it. The tricky bit is that if you do seek(DATA, 0, 0), it’ll be positioned to the first source line, not the line after __DATA__. Therefore you need to save the position first: my $data_start = tell DATA; # save the position print while (<DATA>); … Read more