Added an interface for procedures and a sample primitive procedure.