# H.3. Procedural Languages

PostgreSQL includes several procedural languages with the base distribution: PL/pgSQL, PL/Tcl, PL/Perl, and PL/Python.

In addition, there are a number of procedural languages that are developed and maintained outside the core PostgreSQL distribution. Table H.2 lists some of these packages. Note that some of these projects might not be released under the same license as PostgreSQL. For more information on each procedural language, including licensing information, refer to its website and documentation.

Table H.2. Externally Maintained Procedural Languages

Name Language Website
PL/Java Java https://tada.github.io/pljava/ (opens new window)
PL/Lua Lua https://github.com/pllua/pllua-ng (opens new window)
PL/R R https://github.com/postgres-plr/plr (opens new window)
PL/sh Unix shell https://github.com/petere/plsh (opens new window)
PL/v8 JavaScript https://github.com/plv8/plv8 (opens new window)