Received: from maia.hub.org (maia-5.hub.org [200.46.204.29]) by mail.postgresql.org (Postfix) with ESMTP id 8FA4FB5DCDB for ; Mon, 15 Aug 2011 19:48:50 -0300 (ADT) Received: from mail.postgresql.org ([200.46.204.86]) by maia.hub.org (mx1.hub.org [200.46.204.29]) (amavisd-maia, port 10024) with ESMTP id 41895-02-7 for ; Mon, 15 Aug 2011 22:48:44 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from pd4.baremetal.com (pd4.baremetal.com [209.17.165.1]) by mail.postgresql.org (Postfix) with ESMTP id 4DDC0B5DC5A for ; Mon, 15 Aug 2011 19:47:37 -0300 (ADT) Received: from Darren-Duncans-iMac.local (S0106000f66d65e51.gv.shawcable.net [96.54.45.173]) by pd4.baremetal.com (8.13.4/8.13.4) with ESMTP id p7FMlaRT005352; Mon, 15 Aug 2011 15:47:36 -0700 Message-ID: <4E49A208.5070604@darrenduncan.net> Date: Mon, 15 Aug 2011 15:47:36 -0700 From: Darren Duncan User-Agent: Thunderbird 2.0.0.24 (Macintosh/20100228) MIME-Version: 1.0 To: David Johnston CC: pgsql-general@postgresql.org Subject: Re: Using Postgresql as application server References: <4E498536.9080109@darrenduncan.net> <008301cc5b95$e287b120$a7971360$@yahoo.com> In-Reply-To: <008301cc5b95$e287b120$a7971360$@yahoo.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.36 X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=-1.9 tagged_above=-5 required=5 tests=BAYES_00=-1.9 X-Spam-Level: X-Archive-Number: 201108/462 X-Sequence-Number: 178744 David Johnston wrote: >>> I believe that it is ideal for Postgres to be computationally complete in >>> that one *could* use it to implement a complete application. That isn't >>> to say one should do this as a matter of course, good to use appropriate >>> tools for a >>job, but that it should at least be possible if one wanted >>> to. -- Darren Duncan > > So who wants to fund the effort to create the necessary infrastructure to > display a programmer-defined user interface screen (think of the "Forms" > module in Microsoft Access)? Or are you expecting the end-user to open up > PgAdmin and type "SELECT hello_world();". I would argue that because > PostgreSQL is able to talk with many languages that can create these "Forms" > (or even - through extensions - a web-browser) that such functionality is NOT > DESIREABLE and thus PostgreSQL would not ideally be "computationally > complete" by that definition. I mean computationally complete in that Postgres is an application-level virtual machine within which it is technically possible to write an emulator for any given computationally complete language using just stock Postgres and stock PLs, such that say you can just feed a self-contained script to psql and that this script is an application capable of doing anything. I'm not saying that it has to perform well but just be possible. I certainly don't expect any interface-related higher level libraries from this effort, but the foundation should be there so users can create their own just by writing an installable Postgres extension consisting of PL procedures etc that don't need a C compiler. I believe we basically have all the foundation already, with maybe procedures executable outside transactions being the last major part. -- Darren Duncan