Grasshopper is a visual programming language and environment that runs within the Rhinoceros 3D computer-aided design (CAD) application. The program was created by David Rutten, at Robert McNeel & Associates. Programs are created by dragging components onto a canvas. The outputs of those components are then connected to the inputs of subsequent components.