pg.ddx.io  pgsql-hackers@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: José Luis Tallón <jltallon@adv-solutions.net>
To: pgsql-hackers@postgresql.org
Subject: Re: Parser extensions (maybe for 10?)
Date: Wed, 13 Apr 2016 16:11:45 +0200
Message-ID: <570E53A1.2000405@adv-solutions.net> (raw)
In-Reply-To: <CAMsr+YFHfJ7YKcRCUP_BdJZ+SHwoF9CdEvk8b-opVRDrHXf7uw@mail.gmail.com>
References: <570C7B5A.9070309@gmail.com>
	<CAMsr+YFHfJ7YKcRCUP_BdJZ+SHwoF9CdEvk8b-opVRDrHXf7uw@mail.gmail.com>
List-Unsubscribe: <mailto:majordomo@postgresql.org?body=unsub%20pgsql-hackers>

On 04/12/2016 06:45 AM, Craig Ringer wrote:
> On 12 April 2016 at 12:36, Arcadiy Ivanov <arcadiy@gmail.com 
> <mailto:arcadiy@gmail.com>> wrote:
>
>
>     Is there any interest and/or tips to allow a pluggable parser or
>     at least allow some syntactical pluggability by extensions?
>     I think this may allow some projects to move towards becoming an
>     extension as opposed to forking the project entirely.
>

FWIW, I have previously sketched a "syntax rewriter" of sorts: a simple 
filter which is applied to input before the lexer even sees it.
Quite some "syntax magic" can be achieved by allowing an extension to 
*hook* into this functionality in order to do some rewriting; If turning 
one statement into several (multi-statement) is also allowed quite some 
serious emulation could be achieved.

I can certainly prepare a small patch for the first commitfest of 9.7 if 
this sounds viable.



Thanks,

     / J.L.

view thread (28+ messages)  latest in thread

Message-ID: <570E53A1.2000405@adv-solutions.net>
Permalink:  ../570E53A1.2000405@adv-solutions.net/
Also on:    postgresql.org/message-id/570E53A1.2000405@adv-solutions.net

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-hackers@postgresql.org
  Cc: jltallon@adv-solutions.net
  Subject: Re: Parser extensions (maybe for 10?)
  In-Reply-To: <570E53A1.2000405@adv-solutions.net>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox