Skip to main content


What I really hate about #perl is the Carp module, with "carp", "croak", "confess", "cluck" which make no sense as names, as opposed to "die" and "warn".
#perl
in reply to christian mock

"superwarn", "superdie", "superdie with stack trace", "superwarn with stack trace", right? I think if you told a native English speaker to match up those four things they'd probably get it right, but…
in reply to Rev. Roger BW 😷

@RogerBW It would suffice to override "die" and "warn" with stack-tracing variants (or maybe there's a module that does this that I don't know about?) -- "carp" is a fish to me, "croak" and "cluck" are frog/hen sounds, "confess" is catholic and usually performed without dieing...
in reply to christian mock

Oh indeed, the meanings have been tortured for the assonance. (I think the without-trace versions are so that a module can report an error in the context of the actual call the user made into the module, rather than where the error happened in the guts of the module.)
in reply to Rev. Roger BW 😷

@RogerBW Yup. Found "Carp::Always", but that basically turns Perl into Java, so I'll just have to remember to "confess" as the good catholic boy I once was...
in reply to christian mock

@christian mock Perl replaces builtins with puns, and standardizes on puns, this then creates some level of Secret Culture
in reply to silverwizard

@silverwizard yes, and most of the rest of Perl is pretty straightforward (regarding built-in function names, let's not get into the syntax)...
⇧