Actually just three programming languages in a trenchcoat
at string-repr-callable 22 lines 431 B view raw
1func divBy x 0 = x / yield 'INF 2func divBy x "y" = x / yield 'NAN 3func divBy x y = x / y 4 5proc main!() { 6 let x = with divBy 3 0 7 when 'NAN cancel 0 8 when 'INF resume 1 9 else yield 10 11 let y = with divBy 4 "y" 12 when 'NAN cancel 9 13 when 'INF resume 2 14 else yield 15 16 let z = with divBy 4 2 17 when 'NAN cancel 9 18 when 'INF resume 4 19 else yield 20 21 exit x + y + z 22}