Implemented functions for descriptor programming. NOT TESTED!