I think that's the point.
There's a nontrivial % of Mac Mini / MacBook / iMac sales entirely because of the need to have Mac to publish anything, even PhoneGap/Cordova projects and Safari Extensions to the Apple App Store.
The iPad Pros are on par price-wise with the Mac after you get keyboard cases etc, and on iOS they also get a huge cut of every app sold since you have to get them from the app store. They'd probably be thrilled if Macs were replaced with iPad. The can always jack up the price later.
They wouldn't have spent years neglecting the downfall of the Mac if they cared so much about that revenue.
Each Apple device has a very nice overlapping niche and a lot of consistency between them but some devices are intentionally not designed to do some tasks. iOS is fine for non power user tasks and simple automation but nothing more. For 80% of what I do that is fine so I usually go to the iPad first always. But if I want to sit down and do full on keyboard based productivity it's the MBP every time.
The iPad Pro has a very special place in my heart though. It's the most reliable and efficient machine and with the Apple Pencil it's a game changer. I love to take it with me when I go out for a weekend and will sit in a hotel, do spreadsheet, organise tasks, do some drawing, watch some streams, casual messaging and emails and even video and photo editing. But not programming!
Naturally it is somehow still a PhD topic, but imagine using Swift playgrounds with the pencil as if it was paper notebook.
I can imagine such a person finding this idea gratifying, albeit perhaps too much of a REPL for his tastes.
2. The iPad Pro already has keyboard and mouse support
3. The iPad Pro is already powerfull enough to run virtual machines via emulation, see UTM
4. The formfactor is already prooven by the success of Microsoft Surface and copies.
5. The virtualization APIs created by Apple already exist
This is just a matter of Apple having an enforced monopoly on app distribution and using that power to dictate what you should be able to use each device for.
2. Sort of. It has good keyboard support and completely different mouse support to most platforms.
3. It probably isn’t within the thermal envelope specified and the storage available.
4. Surface is horrible so I’m not sure why that’s comparable.
5. Yes they do and are exposed by macOS only.
I agree with apple. One of the reason iPads are so damn good is that they put some constraints on them to stop people doing horrible things. Virtualisation is one of those horrible things.
The iPhone was originally planned not to have any apps. I guess that would've been even better (and less horrible)?
The Surface Go with type cover is an amazing janky device. It weighs almost nothing and has the CPU power to match, but I can toss it in my backpack and have a lightweight dev environment with me all the time.
It's great because it's has no software constraints, despite all the hardware compromises. I'd ditch it in a second if the iPad could run full macOS.
2. A keyboard is a keyboard and a mouse is a mouse. Remotely or inside a VM they behave as you expect the remote/guest to behave.
3. Bullshit, the Macbook Air has the same thermal envelope
4. Horrible or not, it prooves the formfactor is viable and desired by people.
5. An arbitrary decision designed to protect market segmentation.
That is a rather emotional response. What did the horrible virtualization ever do to you?
2. Yes and no. It uses finger emulation on iOS. There is precision control if you need it but the UI is designed for fingers not pointers and switching between one and the other is jarring to say the least.
3. No it doesn't. I have one. The MBA has a much lower thermal resistance than the iPad Pro does and doesn't even get remotely as hot.
4. It proves it was sold to people, not that it is desirable for any particular tasks. You can't draw than conclusion without more data which you have not presented.
5. Not at all.
As for virtualization it is a pretty bad solution for most problem domains. It adds overhead, inefficiency, latency. At that point it is illogical to use it for devices which require low overhead, efficiency and low latency i.e. most mobile devices out there. Taking the initial post into consideration, in what insane world does it even make sense to run a full windows stack on a mobile device when the only thing that matters is the applications?
It's an insane proposition really. I don't do it on any laptops either. Same set of compromises. It barely even makes sense in the cloud either where we end up gaining cost and reduction in performance. Containers are as far as virtualization should go at this point.
So may be they never will give us Mac experience on iPad (including the shell, forking processes, compile any program which include JIT, etc.) But if they do, it is very likely it is some kind of virtualization that contain the associated risks of those freedoms.
I have a new M1 MacBook Pro with a large monitor for programming, but since I usually write using an iPad, having first class development tools for all popular langauges would be very nice.