It’s been a while I’ve played with Grasshopper. It is getting to be more and more powerful. I think I will be exploring more in this world of Grasshopper + VB.NET and also IronPython included in the upcoming Rhino 5. This definition is super simple. It arrays / deforms a component that you define according to the two surfaces and their UV divisions.
In order to use the definition, first define a box, and some geometries within the box as your base component. Then, simply create two surfaces as references for organizing your components. Finally, control U/V divisions.