sub sga { if (COND) { 1; } else { 2; } } sub sgb { COND and return 1; 2; } sub sgc { COND ? 1 : 2; } #### sub sgb_prime { COND and do { somecommand(); somemorecommand(); return 1; }; evenmorecommand(); verylongsequenceofcommands(); andsomemore(); 2; }