Received: from maia.hub.org (maia-2.hub.org [200.46.204.251]) by mail.postgresql.org (Postfix) with ESMTP id 6397FB5DC56 for ; Mon, 15 Aug 2011 19:46:56 -0300 (ADT) Received: from mail.postgresql.org ([200.46.204.86]) by maia.hub.org (mx1.hub.org [200.46.204.251]) (amavisd-maia, port 10024) with ESMTP id 27563-05-5 for ; Mon, 15 Aug 2011 22:46:50 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from smtp110.prem.mail.ac4.yahoo.com (smtp110.prem.mail.ac4.yahoo.com [76.13.13.93]) by mail.postgresql.org (Postfix) with SMTP id 412A0B5DC54 for ; Mon, 15 Aug 2011 19:46:47 -0300 (ADT) Received: (qmail 48531 invoked from network); 15 Aug 2011 22:46:47 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=DKIM-Signature:X-Yahoo-Newman-Property:X-YMail-OSG:X-Yahoo-SMTP:Received:From:To:Cc:References:In-Reply-To:Subject:Date:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:X-Mailer:Thread-Index:Content-Language; b=AMJ72lLbCTtTrngK+sfIPeSp7WDhxghUZ70jpi6XgRQKwgUQ0Am+jvwPNWzEC76sHjmVkcByIZRoyZVJk7z3TAB0/M3c1Ob9Ic/Hz1HQfxULXN6OR/8uRQ0YQKEk8SeDR3A5Y8nywfmtWKqVLS51LUexCOt8aYmHboo68Jn4XRo= ; DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s1024; t=1313448407; bh=AzLzBG+a34AeG/v8Qn3+01K4UJyg4rh/W2xCIWOOF4Y=; h=X-Yahoo-Newman-Property:X-YMail-OSG:X-Yahoo-SMTP:Received:From:To:Cc:References:In-Reply-To:Subject:Date:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:X-Mailer:Thread-Index:Content-Language; b=Gupjcjsrm7pSAEBWMAV7c3RDHv8Gcr6JaI5csGUxhTNpchuxI94stisGaiJIpSxmXCvl7MidpDJRDJqa7FuHCGhBvnsbTqq7dlX3beqcw0cre+qTnPCOPDseTDJrdAgagTXeLWG33/MFymsvPS8odEEPcqj7e8HTg/3JW7EEwSc= X-Yahoo-Newman-Property: ymail-3 X-YMail-OSG: WUNrkqYVM1kLS.jJ4fexds1tvYOiDkrvIUqVh7.LTfAmjW5 vBrYMhQxMBpL8Di18CxKgVwOkZH.I4HBwDcNDH2.DjA.hv.7mq8gx0wXcEGQ oDcCOwnFVfTe_essQ_O87b__X3QVauWCiAXT1_uN4bn8v3rf4MOlGIdLeazm NskUOD_HbQ4MFnLUtvEISUSNP9ZcIdJg0I_GQtQlnfpmNuS9HVW_KI_om8oH 8_ko_0NtnrMZg7ZPRXD3s6T9TfBSYx0Y9X5gTZ2X7wx9vPdWVF3cBnP_YBrc 75IZrboxxaiqtk27lKxeP7XD94kwnqr4r.49ALIbQynGcAG6g6JBvWzmENu7 B2QDL.BzHt4cXdVajdUdSMGcfnvYcAg8aTvgICGu2Arvzh_aAmz2LgXI.Ld2 pRlhMGg-- X-Yahoo-SMTP: mpGJl6eswBD2IBufoVEg0Pa8gg-- Received: from WolfDog (polobo@66.67.24.143 with login) by smtp110.prem.mail.ac4.yahoo.com with SMTP; 15 Aug 2011 15:46:47 -0700 PDT From: "David Johnston" To: "'Merlin Moncure'" Cc: "'Darren Duncan'" , References: <4E498536.9080109@darrenduncan.net> <008301cc5b95$e287b120$a7971360$@yahoo.com> In-Reply-To: Subject: Re: Using Postgresql as application server Date: Mon, 15 Aug 2011 18:46:30 -0400 Message-ID: <008b01cc5b9d$2d2da160$8788e420$@yahoo.com> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable X-Mailer: Microsoft Outlook 14.0 Thread-Index: AQGujA4KJPJHOJFqRt+aBWOAzi9XwgKP2+KuAkddIHsBUQEYJ5Uo3BRw Content-Language: en-us X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=-2.886 tagged_above=-5 required=5 tests=BAYES_00=-1.9, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RP_MATCHES_RCVD=-0.988, UNPARSEABLE_RELAY=0.001 X-Spam-Level: X-Archive-Number: 201108/461 X-Sequence-Number: 178743 -----Original Message----- From: pgsql-general-owner@postgresql.org [mailto:pgsql-general-owner@postgresql.org] On Behalf Of Merlin Moncure Sent: Monday, August 15, 2011 6:10 PM To: David Johnston Cc: Darren Duncan; pgsql-general@postgresql.org Subject: Re: [GENERAL] Using Postgresql as application server On Mon, Aug 15, 2011 at 4:54 PM, David Johnston = wrote: >>> >>>I believe that it is ideal for Postgres to be computationally=20 >>>complete in that one *could* use it to implement a complete=20 >>>application. =A0That isn't to say one should do this as a matter of=20 >>>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)? =A0Or are you expecting the end-user to = open up PgAdmin and type "SELECT hello_world();". =A0I 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've been thinking for a while about doing this: describe the interface = in tables along with some rendering code which directly accepts the request = and spits out some html. I'd be gunning for something with the speed and = ease of development of delphi, which fwict has never been reproduced. So = you'd have a 'form' table which you could then bind to a real table via an = adapter or some automatic scaffolding which renders the entry based on the = structure of the table. Sitting in front of the database would probably be an = ultra thin web server like node.js which just grabs the request and hands it = to the database through a simple connection pool. merlin -------------------------------------------------- A more powerful (and complex) solution would be to integrate some form = of "Templating" solution (e.g., Velocity) and require that the interface definitions be templates that generate valid HTML upon processing (since your solution already requires an external web browser anyway). Hstore = and Cursors (with a named composite type) could be used to feed data into = the template. David J.