Re: Boolean operators without commutators vs. ALL/ANY

Alvaro Herrera <alvherre@commandprompt.com>

From: Alvaro Herrera <alvherre@commandprompt.com>
To: Florian Pflug <fgp@phlo.org>
Cc: Greg Stark <stark@mit.edu>, Tom Lane <tgl@sss.pgh.pa.us>, Peter Eisentraut <peter_e@gmx.net>, Robert Haas <robertmhaas@gmail.com>, PG Hackers <pgsql-hackers@postgresql.org>
Date: 2011-06-20T17:22:24Z
Lists: pgsql-hackers
Excerpts from Florian Pflug's message of lun jun 20 06:55:42 -0400 2011:

> The latter (i.e. regexp literals enclosed by /../) probably isn't
> desirably for postgres, but the former definitely is (i.e. distinguishing
> regexp's and text in the type system). Please see the thread
> "Adding a distinct pattern type to resolve the ~ commutator stalemate"
> for the details of the proposal. 

'your text' ~ regexp 'your.*foo'
     column ~ regexp 'your.*foo'

So you could do

regexp 'foo.*bar' ~ 'your text'

and it's immediately clear what's up.

The question is what to do wrt implicit casting of text to regexp.
If we don't, there's a backwards compatibility hit.

-- 
Álvaro Herrera <alvherre@commandprompt.com>
The PostgreSQL Company - Command Prompt, Inc.
PostgreSQL Replication, Consulting, Custom Development, 24x7 support