#18 - Provide a Visitor interface to accept patch instruction generation