A preliminary investigation into Computer Assisted Programming