Received: from gladius.middle.net (gladius.middle.net [63.83.55.2]) by postgresql.org (8.11.3/8.11.1) with ESMTP id f3DHZQ881090 for ; Fri, 13 Apr 2001 13:35:27 -0400 (EDT) (envelope-from butlerm@middle.net) Received: from citius ([63.83.55.3] helo=middle.net) by gladius.middle.net with esmtp (Exim 3.21 #1) id 14o7Th-00043x-00; Fri, 13 Apr 2001 11:35:25 -0600 Message-ID: <3AD738DB.B90D7866@middle.net> Date: Fri, 13 Apr 2001 11:35:23 -0600 From: Mark Butler X-Mailer: Mozilla 4.75 [en] (WinNT; U) X-Accept-Language: en MIME-Version: 1.0 To: Tom Lane CC: pgsql-docs@postgresql.org Subject: Re: Function Inheritance? References: <3AD28152.5B88F069@middle.net> <4678.987180995@sss.pgh.pa.us> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Archive-Number: 200104/46 X-Sequence-Number: 618 [Re: Tom Lane's explanation of function inheritance] That is a really nice capability. However, the statement is somewhat confusing because this is a matter of parameter type promotion rather than member/method function inheritance, which is what I thought was being referred to. I suggest something like the following: "In Postgres, each created table automatically defines a new row object type in an inheritance hierarchy. Postgres automatically allows a descendant table row object to be used anywhere a parent table row object is called for. This means that functions declared to accept row objects from a parent table automatically accept row objects from all of its descendant tables as well." Is that an improvement? I believe the SQL3 people were wrestling with similar nomenclature issues once upon a time... - Mark Butler