http://qs1969.pair.com?node_id=1218832


in reply to Histogram Creation

On a stylistic note, the layout that you've used:

sub main { .. some code .. .. more code .. } main();
drives me absolutely bananas.

The routine main is not, and never will be, a sub-routine. main is main. The main-line program. That's what gets run.

How about instead structuring it as

{ .. some code .. .. more code .. }
By definition, that's implicitly main. You could even pretend it's a shell script (from whence Perl came), and do this:
.. some code .. .. more code ..

My personal preference is to have braces, if only to remind me that this is a procedure (even if it is really close to a shell script).

Alex / talexb / Toronto

Thanks PJ. We owe you so much. Groklaw -- RIP -- 2003 to 2013.

Replies are listed 'Best First'.
Re^2: Histogram Creation
by AnomalousMonk (Archbishop) on Jul 19, 2018 at 14:38 UTC
    My personal preference is to have braces ...

    My practice for largeish scripts is to have a block with a nice, big label on it and protection for unexpected exit from the block:

    MAIN: { ... exit; # normal script exit } # end MAIN loop die "unhandled script exit"; # subroutines ############################################### ...


    Give a man a fish:  <%-{-{-{-<