Re: [HACKERS] massive quotes?

2003-09-16 Thread Richard Hall
Andreas said

>>
Well we might also have something like
CREATE FUNCTION ... AS QUOTE('MyEndMarker')

all the stuff
... MyEndMarker LANGUAGE 'plpgsql';

This looks quite SQL-like and should be easily implementable. Anyway,
this Perl-like style or Tom's proof-of-concept dollar-quoting one, both
seem equally usable, now let's have someone roll a die to decide.
>>

But if THIS solution is implemented then
QUOTE('MyEndMarker')
and
MyEndMarker
become noise words and it seems the parser could just assume to handle everything 
between
CREATE FUNCTION ... AS
and
LANGUAGE
as the delimiters for a function definition.

But as that's so simple I must be missing something.

Rick


---(end of broadcast)---
TIP 2: you can get off all lists at once with the unregister command
(send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])


Re: [HACKERS] [SQL] plpgsql doesn't coerce boolean expressions to boolean

2003-09-09 Thread Richard Hall


Define the language! If it breaks code, so be it.
2. Throw an error if the _expression_ doesn't return boolean.
Yes, yes, absolutely.
By definition "an IF, WHILE, or EXIT statement is a boolean _expression_"
SO
    if "some stupid piece of text" THEN
should not compile, there is no BOOLEAN _expression_.
C's implementation of hat is true and false has always, IMHO, been hideous.
But then again, I am a Pascal kind of thinker.
An integer with a value of 1 is still only an integer,
    IF I <> 0 THEN ...
is clear and un-ambiguous.
 
 
Tom Lane wrote:
Following up this gripe
http://archives.postgresql.org/pgsql-sql/2003-09/msg00044.php
I've realized that plpgsql just assumes that the test _expression_
of an IF, WHILE, or EXIT statement is a boolean _expression_.  It
doesn't take any measures to ensure this is the case or convert
the value if it's not the case.  This seems pretty bogus to me.
However ... with the code as it stands, for pass-by-reference datatypes
any nonnull value will appear TRUE, while for pass-by-value datatypes
any nonzero value will appear TRUE.  I fear that people may actually
be
depending on these behaviors, particularly the latter one which is
pretty reasonable if you're accustomed to C.  So while I'd like
to throw
an error if the argument isn't boolean, I'm afraid of breaking people's
function definitions.
Here are some possible responses, roughly in order of difficulty
to implement:
1. Leave well enough alone (and perhaps document the behavior).
2. Throw an error if the _expression_ doesn't return boolean.
3. Try to convert nonbooleans to boolean using plpgsql's usual method
   for cross-type coercion, ie run the type's output proc
to get a
   string and feed it to bool's input proc.  (This seems
unlikely to
   avoid throwing an error in very many cases, but it'd be
the most
   consistent with other parts of plpgsql.)
4. Use the parser's coerce_to_boolean procedure, so that nonbooleans
   will be accepted in exactly the same cases where they'd
be accepted
   in a boolean-requiring SQL construct (such as CASE). 
(By default,
   none are, so this isn't really different from #2. 
But people could
   create casts to boolean to override this behavior in a
controlled
   fashion.)
Any opinions about what to do?
   
regards, tom lane
---(end of broadcast)---
TIP 3: if posting/reading through Usenet, please send an appropriate
  subscribe-nomail command to [EMAIL PROTECTED]
so that your
  message can get through to the mailing
list cleanly



Re: [HACKERS] did you read my mails ?

2003-07-21 Thread Richard Hall
File IO, now that's something I would like to see. I will need that "REAL SOON NOW".

RIck


Bruce Momjian wrote:

> I haven't seen those myself.
>
> ---
>
> ivan wrote:
> >
> > functions to open,read,write etc files
> >
> > On Mon, 21 Jul 2003, Bruce Momjian wrote:
> >
> > >
> > > What functions are they?
> > >
> > > ---
> > >
> > > ivan wrote:
> > > >
> > > > someone looked at my files function ??
> > > >
> > > >
> > > >
> > > > ---(end of broadcast)---
> > > > TIP 7: don't forget to increase your free space map settings
> > > >
> > >
> > > --
> > >   Bruce Momjian|  http://candle.pha.pa.us
> > >   [EMAIL PROTECTED]   |  (610) 359-1001
> > >   +  If your life is a hard drive, |  13 Roberts Road
> > >   +  Christ can be your backup.|  Newtown Square, Pennsylvania 19073
> > >
> > > ---(end of broadcast)---
> > > TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]
> > >
> >
>
> --
>   Bruce Momjian|  http://candle.pha.pa.us
>   [EMAIL PROTECTED]   |  (610) 359-1001
>   +  If your life is a hard drive, |  13 Roberts Road
>   +  Christ can be your backup.|  Newtown Square, Pennsylvania 19073
>
> ---(end of broadcast)---
> TIP 2: you can get off all lists at once with the unregister command
> (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])


---(end of broadcast)---
TIP 5: Have you checked our extensive FAQ?

   http://www.postgresql.org/docs/faqs/FAQ.html


Re: [HACKERS] [SQL] Our FLOAT(p) precision does not conform to spec

2003-06-19 Thread Richard Hall
Fix the problem and inform the users about code that may break.

Rick




---(end of broadcast)---
TIP 5: Have you checked our extensive FAQ?

   http://www.postgresql.org/docs/faqs/FAQ.html