You say Apple limits parameters. How about the high performance car requiring a specific octane? Or our older diesel engines that don'l love the newer low sulfur fuel, how about the connections on insturments where you have to have a specific port and you don't end up with several, how about Chart Plotters that only read the companies charts that sell the plotter.
Seems like most everyone limits parameters in some way shape or form.
In Apples OS there are (I'm guessing here cause I've never counted them) 1,000's of chuncks of code that a programer can use to streamline their work plus using the code ensures less breakage in upgrades and a more consistent end user environment. All to the good in my book.
Go Slow
Sail Far
Stay Long