Thread
-
[GSoC 2021 project summary] PL/Julia
Konstantina Skovola <konskov@gmail.com> — 2021-08-24T08:25:53Z
Hello hackers, Here is a summary of what was implemented over the summer in PL/Julia: 1. Added support for more datatypes as input and output: NULL, boolean, numeric types, composite types, arrays of base types can now be passed as input arguments to PL/Julia functions. Users can also return the above, or sets of the above from PL/Julia UDFs. 2. Added trigger support - users can write trigger functions in PL/Julia 3. Added event trigger support 4. Added support for the DO command 5. Added functions for database access from PL/Julia: spi_exec(query, limit) and spi_exec(query) for SQL-statement execution, spi_fetchrow(cursor) and spi_cursor_close(cursor) to return rows and to close the cursor respectively, spi_prepare(query, argtypes) to prepare and save an execution plan and spi_exec_prepared(plan, args, limit) to execute a previously prepared plan. A brief presentation of the above https://docs.google.com/presentation/d/1cTnsUWiH6o0YH6MlZoPLofna3eNT3P3r9HSL9Dyte5U/edit?usp=sharing Documentation with use examples https://gitlab.com/konskov/pljulia/-/blob/main/README.md Currently the extension works for version 13 and Julia versions >= 1.6 (Thanks to Imre Samu for testing!) I hope you find it interesting. Regards, Konstantina
-
Re: [GSoC 2021 project summary] PL/Julia
Dave Cramer <davecramer@postgres.rocks> — 2021-08-24T11:31:49Z
Hi Konstantina, Very cool! I was actually looking at doing this as we also have PL/R. Dave Cramer On Tue, 24 Aug 2021 at 04:26, Konstantina Skovola <konskov@gmail.com> wrote: > Hello hackers, > > Here is a summary of what was implemented over the summer in PL/Julia: > > 1. Added support for more datatypes as input and output: > NULL, boolean, numeric types, composite types, arrays of base types can > now be passed as input arguments to PL/Julia functions. Users can also > return the above, or sets of the above from PL/Julia UDFs. > 2. Added trigger support - users can write trigger functions in PL/Julia > 3. Added event trigger support > 4. Added support for the DO command > 5. Added functions for database access from PL/Julia: > spi_exec(query, limit) and spi_exec(query) for SQL-statement execution, > spi_fetchrow(cursor) and spi_cursor_close(cursor) to return rows and to > close the cursor respectively, > spi_prepare(query, argtypes) to prepare and save an execution plan and > spi_exec_prepared(plan, args, limit) to execute a previously prepared plan. > > A brief presentation of the above > > https://docs.google.com/presentation/d/1cTnsUWiH6o0YH6MlZoPLofna3eNT3P3r9HSL9Dyte5U/edit?usp=sharing > Documentation with use examples > https://gitlab.com/konskov/pljulia/-/blob/main/README.md > > Currently the extension works for version 13 and Julia versions >= 1.6 > (Thanks to Imre Samu for testing!) > > I hope you find it interesting. > > Regards, > Konstantina >
-
Re: [GSoC 2021 project summary] PL/Julia
Fabrízio de Royes Mello <fabriziomello@gmail.com> — 2021-08-24T11:59:55Z
On Tue, Aug 24, 2021 at 5:26 AM Konstantina Skovola <konskov@gmail.com> wrote: > > Hello hackers, > > Here is a summary of what was implemented over the summer in PL/Julia: > > 1. Added support for more datatypes as input and output: > NULL, boolean, numeric types, composite types, arrays of base types can now be passed as input arguments to PL/Julia functions. Users can also return the above, or sets of the above from PL/Julia UDFs. > 2. Added trigger support - users can write trigger functions in PL/Julia > 3. Added event trigger support > 4. Added support for the DO command > 5. Added functions for database access from PL/Julia: > spi_exec(query, limit) and spi_exec(query) for SQL-statement execution, > spi_fetchrow(cursor) and spi_cursor_close(cursor) to return rows and to close the cursor respectively, > spi_prepare(query, argtypes) to prepare and save an execution plan and > spi_exec_prepared(plan, args, limit) to execute a previously prepared plan. > > A brief presentation of the above > https://docs.google.com/presentation/d/1cTnsUWiH6o0YH6MlZoPLofna3eNT3P3r9HSL9Dyte5U/edit?usp=sharing > Documentation with use examples > https://gitlab.com/konskov/pljulia/-/blob/main/README.md > > Currently the extension works for version 13 and Julia versions >= 1.6 (Thanks to Imre Samu for testing!) > Awesome Konstantina, it was a pleasure working with you in this project. Looking forward to your next contributions to PostgreSQL. Regards, -- Fabrízio de Royes Mello Timbira - http://www.timbira.com.br/ PostgreSQL: Consultoria, Desenvolvimento, Suporte 24x7 e Treinamento