Knobhead pretty much said it all.
If you're in aerospace making tough parts, USE NCL, and combine it with either Mastercam or SurfCam for the simpler stuff.
NCL is a language based program, so it's incredibly easy to alter things if you have any experience writing programs with decision loops or variables. Do you need to know lots of math? NO! Just logic. If you can figure out that you need to keep the tool tilted forward yet still in contact with the floor, but also tangent to the side of a contoured wall at some height, then at a specific distance start a transition to being tangent to the next wall you run into, all the while never violating the "floor" surface or changing the forward lean of the cutter... And if you want to do this with bull, ball, wheel, lollypop, taper, full radius wheel, barrel or truncated large diameter balls, NCL is it and has been for 20 years!!! If you fight cutter-whip, or need to machine with the top of a wheel cutter, the top of a bell shaped cutter and at the same time control it's contact with several other surfaces, it's powerful.
The only package I've seen that looks as powerful is the one "Think 3" packages with their software for CNC. It's been a big hit in Europe and detriot.