This list is useless. What are the salient aspects of Python programs versus other programming langs/environments (e.g., Javascript, C++) that imposes different demands on a database system?
> I'm wondering if it would be worth skipping the SQL layer and compiling straight to the execution plan level.
You have to join five tables in a query. What join order will you pick in your execution plan? Will you use the same ordering for different WHERE clause parameters? What if you add an index?
What you're proposing was tried in the 1970s (see CODASYL) and it was a terrible idea.
If this is shocking wait until you find out that a lot of banks still use IBM IMS. That's IBM's first database that they built for the government to track rocket parts for the Apollo moon mission.
> Rather than a query planner, an interesting approach would be to expose the more stable part of the internals with a new language and let people roll their own query plans.
Those that are ignorant of history are doomed to repeat it.
Go read Stonebraker's "What Goes Around Comes Around"
See Rawls 'Original Position' on why you should care: https://en.wikipedia.org/wiki/Original_position