functional :: Proc4 :: call
fun call(a0: A0,a1: A1,a2: A2,a3: A3) is abstract
redef fun call(a0,a1,a2,a3) is intern