1) Jestli bych já uměl napsat optimalizátor? No za x let možná, to je ta nejsložitější část DB. Ale hlavně, proč psát něco, co už je napsané a vyzkoušené? Hledal bych spíše cesty, jak současné iplementace využít.
2) IMHO to možné je. Teda do SQL + nějakýho procedurálního jazyka, imperativní jazyk jen tak do deklarativního převést nelze. S relačními proměnými je trochu problém, ale jdou emulovat. Např. se takové proměnné budou ukládat v global temporary table a předávat se bude jen identifikace z té tabulky. Nebo normální tabulky, ale tam bych pak musel implementovat GC. Nebo je vyhodnocovat líně (to ale asi nejde vždy).
Samozřejmě nejčistší řešení by bylo do některé z opensource databáze tu podporu dopsat.