that you should give a try, at least for the sake of knowing them...
1. haskell language
why: https://youtu.be/LR8fQiskYII?t=163
lol: https://www.youtube.com/watch?v=dV_mD3SxViQ
how: http://learnyouahaskell.com/chapters
libraries: https://hackage.haskell.org/packages/
bonus: https://xmonad.org/
https://www.youtube.com/watch?v=LnX3B9oaKzw
2. blender 3D ++
why: very nice interface... :)
how: start with an interface usage tutorial
then modeling: https://www.youtube.com/results?search_query=blender+modeling+tutorial
libraries: programmable in python
bonus: https://www.youtube.com/watch?v=mIiY6aGefvI
https://www.youtube.com/watch?v=biywY5l_2nU
https://en.blender.org/index.php/Extensions:2.6/Py/Scripts/Import-Export/Paper_Model
3. solvespace by constraining it
why: keeps it simple... :)
how: start here... http://solvespace.com/2d.pl
... and ::: genius ... a math little helper...
... all available on debian... :)