David Fetter at Oscon 2009 just made a stunning claim: With CTE and Windowing, SQL is Turing Complete. He even offers a proof and an amazing example (although I'm not sure if the example requires turing completeness, it's still amazing).
This could be a big deal. Why? It means that you can do anything in an SQL query. While drawing the mandlebrot set is a nice demo, the first "killer app" will be tree traversal. Lots of relational tables end up looking like trees and are a royal pain to deal with in normal SQL. After that, only our imagination (and performance) is the limit. You can theoretically create any data view that runs in the DB all in one shot, without any of the troubles of stored procedures.
I see a similarity between turing-complete SQL in the DB and JavaScript on the browser. For years, we used JavaScript to do silly stuff, but then a few bright minds created amazing tools like gmail and google maps and our view of JavaScript was forever changed. Now JavaScript is everywhere and there's a race to make the best development framework and engines fastest engines.
Might the same thing happen with turning-complete SQL? is the race on to be the first programming language to compile down to turing-complete SQL?.
Honestly, if I were a betting man, I'd say it won't come to anything significant. But I'll also guess that the lure of compiling down to SQL will eventually capture someone, somewhere. It's only a matter of time. In fact, if you're a programming language geek, the sirens are probably calling to you right now :). When it does happen, I expect the first language to be a functional one, especially one with a small core, like a variant of lisp. Once we get clojure in clojure, maybe it will be a candidate. Or maybe C# will end up with LINQ-to-turning-complete-SQL (SQLINQ?).
What do you think?
Is the resultant SQL still truly declarative? It will take someone cleverer than me to answer that question - but if it is - then this is a very interesting thing indeed.
ReplyDeleteFrom what I read on the netz the following two statements are equal: "This programming language is declarative","There is a DEFINED one-to-one correspondence between written code and produced machine instructions", so in that case since the compiler is not yet written i doubt it's standardized, and hence the language is declarative.
ReplyDeletewhat do I think? reminds me of what Prolog had already accomplished. Then came SQL that didn't nest non-deterministically deep. Then came SPARQL that I guess tried to again take a page from Prolog to add that aspect back in. What's wrong with Prolog? Why do we have to call it other things?
ReplyDeleteشركة قمة الدقة للخدمات المنزلية
ReplyDeleteشركة الماسة لمكافحة الحشرات بالدمام
شركة تنظيف مجالس بالدمام
This blog is so nice to me. I will continue to come here again and again. Visit my link as well. Good luck
ReplyDeleteobat aborsi
cara menggugurkan kandungan
obat penggugur kandungan
obat telat datang bulan
ReplyDeleteشركة نقل عفش من الرياض الى الامارات
شركة نقل عفش من الرياض الى الاردن
ارخص شركة نقل عفش بالرياض
https://khalejmovers.com/
شركة نقل عفش بالرياض عمالة فلبينية
iso certification in noida
ReplyDeleteiso certification in delhi
ce certification in delhi
iso 14001 certification in delhi
iso 22000 certification in delhi
rohs certification in delhi
iso certification services in delhi
iso certification in faridabad
ISO 9001 Certification in Noida
website designing services
seo serivces in delhi
we have provide the best fridge repair service.
ReplyDeletefridge repair in faridabad
Videocon Fridge Repair in Faridabad
Whirlpool Fridge Repair in Faridabad
Hitachi Fridge Repair In Faridabad
Washing Machine Repair in Noida
godrej washing machine repair in noida
whirlpool Washing Machine Repair in Noida
IFB washing Machine Repair in Noida
LG Washing Machine Repair in Noida
we have provide the best ppc service.
ReplyDeleteppc company in gurgaon
website designing company in Gurgaon
PPC company in Noida
seo company in gurgaon
PPC company in Mumbai
PPC company in Chandigarh
Rice Bags Manufacturers
ReplyDeletePouch Manufacturers
wall putty bag manufacturers
Lyrics with music
This is the most supportive blog which I have ever observed.
ReplyDeleteJava Training in Bangalore
Ui Development Training in Bangalore
SQL is very useful for those students who are learning drawing on windows and want to become web designer.I am a writer of phd dissertation writing services and I write all types of Assignments.
ReplyDeleteWe are amongst the Best Mobile App Development Company in Mumbai that offer IOS, Android Mobile Application Development services that look Great and act Smart.
ReplyDeleteMobile app development company in mumbai
mobile app development company in delhi
ReplyDeletemobile app development company in delhi
ReplyDeleteExcellent Post. In fact, I'm making it a sticky so other can find it later. Thanks!
ReplyDeleteanimal crossing
Columbus Day School Closed
ReplyDeleteColumbus Day Wishes
Columbus Day Messages
Columbus Day Emoji
Columbus Day Quotes
Columbus Day Images
Columbus Day Banner
Happy Thanksgiving Image 2020
ReplyDeleteHappy Thanksgiving GIF 2020
Thanksgiving Blessing
Thanksgiving cover photos hd
Happy Thanksgiving Greeting
Happy Thanksgiving Prayer
Nice Information Your first-class knowledge of this great job can become a suitable foundation for these people. I did some research on the subject and found that almost everyone will agree with your blog.
ReplyDeleteCyber Security Course in Bangalore
Writing in style and getting good compliments on the article is hard enough, to be honest, but you did it so calmly and with such a great feeling and got the job done. This item is owned with style and I give it a nice compliment. Better!
ReplyDeleteCyber Security Training in Bangalore
Pretty blog, i found some useful information from this blog, thanks for sharing the great information.
ReplyDeletedeep learning vs machine learning
advantages of react js
aws stands for
angularjs development company
aws interview questions and answers for freshers
this is really nice to read..informative post is very good to read..thanks a lot!
ReplyDeleteseo services in lahore
I just couldn't leave your website before telling you that I truly enjoyed the top quality info you present to your visitors? Will be back again frequently to check up on new posts.
ReplyDeleteseo company in lahore
thanks for the tips and information..i really appreciate it..
ReplyDeletedigital marketing agency in lahore
very interesting keep posting.
ReplyDeleteweb hosting in lahore
Best Christmas pictures ideas
ReplyDeleteChristmas Greeting Gifts Ideas 2020
Merry Xmas Pictures In HD
Merry Xmas Wishes Images
Christmas text SMS messages
Merry Christmas funny quotes
شركة مكافحة حشرات بالرياض
ReplyDeleteشركة مكافحة النمل الابيض بالرياض
شركة مكافحة الصراصير بالرياض
شركة مكافحة الفئران بالرياض
شركة رش مبيدات بالرياض
It was wondering if I could use this write-up on my other website, I will link it back to your website though.Great Thanks.
ReplyDeleteWeb App Development Services UAE
Thanks For sharing this Superb article.I use this Article to show my assignment in college.it is useful For me Great Work.
ReplyDeleteSoftware Development Company UAE
Nice to be visiting your blog again, it has been months for me. Well this article that i've been waited for so long. I need this article to complete my assignment in the college, and it has same topic with your article. Thanks, great share.
ReplyDeleteCustom Website Development in UAE
I really appreciate the information that you have shared on your Blog. Thanks for shearing this blog.
ReplyDeleteHow to Unpause Printer
How to Unpause Printer
How Do I Get My HP Envy 4500 Printer Back Online
How Do You Change a Printer from Offline to Online?
How to Reset HP Printer to Factory Settings
HP Printer Drivers For Windows 7
Computer Recognizes Printer But Not Scanner
How Do I Update My HP Printer Firmware