generic funcion types corrected and per-type name constants added