Extrusion could be a cross between an orientable primitive and an array primitive. It would have an axis, up, and width ("thickness"?) but its shape would be determined by an array of N 2D points.
The same principle could be applied to surface of revolution objects.
Not a necessity.