Re: [HACKERS] New procedural language - Mailing list pgsql-hackers

From Massimo Fidanza
Subject Re: [HACKERS] New procedural language
Date
Msg-id CAHtv6wSzbFYWDeY+rtBY1K+Fd3p0E+K0e3jHrf8Pes4k+bJSkg@mail.gmail.com
Whole thread Raw
In response to Re: [HACKERS] New procedural language  (Amit Langote <Langote_Amit_f8@lab.ntt.co.jp>)
Responses Re: [HACKERS] New procedural language  (Amit Langote <Langote_Amit_f8@lab.ntt.co.jp>)
List pgsql-hackers
But there is a difference between python and Go or Rust that the first is interpreted and the seconds are compiled like C. All PL instead of C and Java (also byte code interpreted) are interpreted 

Il 15 mar 2017 3:52 AM, "Amit Langote" <Langote_Amit_f8@lab.ntt.co.jp> ha scritto:
Hi,

On 2017/03/15 11:08, Massimo Fidanza wrote:
> Hello,
>
> what it means to add a new procedural language such as Go or Rust?

I think you're looking for how to write a "PL function call handler", most
likely in C.  See for example how plpython_call_handler() is defined in
src/pl/plpython/plpy_main.c.  Also read:

https://www.postgresql.org/docs/devel/static/plhandler.html

Beside the call handler, there are couple of other auxiliary functions
that must be provided viz. validator and inline_handler (again, see
plpython_validator and plpython_inline_handler).

Thanks,
Amit


pgsql-hackers by date:

Previous
From: Ian Barwick
Date:
Subject: Re: [HACKERS] Measuring replay lag
Next
From: Rushabh Lathia
Date:
Subject: Re: [HACKERS] wait events for disk I/O