Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer

Re^2: Perl Contempt in My Workplace

by erix (Prior)
on Apr 28, 2021 at 05:04 UTC ( #11131779=note: print w/replies, xml ) Need Help??

in reply to Re: Perl Contempt in My Workplace
in thread Perl Contempt in My Workplace

..., Databases, ...

PostgreSQL, which is mainly a C project, has in recent years (!) adopted tap + perl for testing, and total perl files (*.p[lm]) have grown to several percent of the total lines of code in the tree.

Replies are listed 'Best First'.
Re^3: Perl Contempt in My Workplace
by karlgoethebier (Abbot) on Apr 28, 2021 at 09:14 UTC

    And there is PL/Perl

    Update: Linked to current version of PL/Perl

    ĞThe Crux of the Biscuit is the Apostropheğ

      thanks karlgoethebier! I was not aware of this. PL/Perl can return hashrefs and arrayrefs too! This removes a lot of boilerplate from scripts and puts it exactly where it belongs to: in the guts and out of sight.

      Update: the following caveat does not apply to the recent versions of PL/Python. See nodes below.

      On the other hand, it offers something similar for python but with this caveat:

      As of PostgreSQL 7.4, PL/Python is only available as an "untrusted" language, meaning it does not offer any way of restricting what users can do in it. It has therefore been renamed to plpythonu. The trusted variant plpython might become available again in future, if a new secure execution mechanism is developed in Python. The writer of a function in untrusted PL/Python must take care that the function cannot be used to do anything unwanted, since it will be able to do anything that could be done by a user logged in as the database administrator. Only superusers can create functions in untrusted languages such as plpythonu.

      bw, bliako

        I can't find that in postgres docs, so it looks like you copied that from docs of an old version (version 9.4 is not even supported anymore) (this particular content is still true, though). Annoyingly, google often serves up old pages before more up-to-date ones.

        (There is a 'current' link on top of every postgres doc page, and a link for all supported versions, as well as a link into the docs of the development branch, at the moment 14devel -- and btw: 14beta is expected in a few weeks)

        Ah well...

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://11131779]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others perusing the Monastery: (3)
As of 2022-08-12 18:31 GMT
Find Nodes?
    Voting Booth?

    No recent polls found