I'd make a case for any node-based scripting language in 3D modeling software. Blender or Grasshopper for Rhino comes to mind. Benefit of Grasshopper is that there are convenient Python or C# nodes for you to write scripts that can't be expressed through nodes (IE loops); downside is that it is paid software (although not subscription based!!).
For architecture/design students, Grasshopper is usual their first introduction to programming and algorithmic thinking, and many students become fantastic programmers by extension.
For architecture/design students, Grasshopper is usual their first introduction to programming and algorithmic thinking, and many students become fantastic programmers by extension.