Comment by ur-whale
If you like to code, OpenSCAD is really the best for simple shapes and my go-to tool for these situations, stuff like making a project box for an electronic contraption.
OpenSCAD however fails spectacularly for any kind of complex filetting situation when compared to tools like Fusion or even FreeCAD (FreeCAD's UI is an abomination though).
The morphological ops in OpenSCAD (minkowski type stuff) are a very poor substitute to real fillets, and are extremely slow (underlying algos are all polynomials in number of triangles) when your objects get complex, and they are global operations, it is extremely hard to limit their action to a localized part of your object.
Even Blender, which was truly never designed for this type of operations can sometimes do better than OpenSCAD for fillets.
Another thing that's a real pain in OpenSCAD: you cannot "probe" (measure) your existing object at a certain stage, grab the result of that measurement and re-use it in the rest of the code. MAJOR limitation.
I've long imagined something comparable in use to OpenSCAD, but where the primitives are tool-paths rather than shapes; you specify the cuts (or prints) the machine will make, and get a render of how the material will look afterwards.
This would, of course, be a great hassle to use, but I think I'd really enjoy being able to eg preview the texture different tool heads / cut patterns would leave. I imagine thinking in terms of "how the machine will cut this" would also improve my ability to reason about the machine.