in reply to Pattern for a shell-style call + error response

You could subclass the library and convert the status codes:
#!/usr/bin/perl use strict; use warnings; package Third::Party::Library::Call; use base 'Third::Party::Library'; foreach my $method (qw/bazinate barify/) { no strict 'refs'; my $subref = __PACKAGE__->can($method) || die "Unknown method: $method"; *$method = sub {my $stat = &$subref(@_); return !$stat; }; }
Then things do look a little more perlish:
my $libobj = Third::Party::Library::Call->newObj; $libobj->bazinate or die $libobj->GetErrorCode;