
| 36.8. Procedural Language Functions |
| --- |
| [Prev](https://www.postgresql.org/docs/current/xfunc-volatility.html "36.7. Function Volatility Categories")  | [Up](https://www.postgresql.org/docs/current/extend.html "Chapter 36. Extending SQL") | Chapter 36. Extending SQL | [Home](https://www.postgresql.org/docs/current/index.html "PostgreSQL 18.3 Documentation") |  [Next](https://www.postgresql.org/docs/current/xfunc-internal.html "36.9. Internal Functions") |

* * *

PostgreSQL allows user-defined functions to be written in other languages besides SQL and C. These other languages are generically called _procedural languages_ (PLs). Procedural languages aren't built into the PostgreSQL server; they are offered by loadable modules. See [Chapter 40](https://www.postgresql.org/docs/current/xplang.html "Chapter 40. Procedural Languages") and following chapters for more information.
