blob: bef1b936cca80dc3aec8b67e1b6d443312041c0d [file] [log] [blame]
---
title: Using Languages and Extensions in HAWQ
---
HAWQ supports user-defined functions that are created with the SQL and C built-in languages, and also supports user-defined aliases for internal functions.
HAWQ also supports user-defined functions written in languages other than SQL and C. These other languages are generically called *procedural languages* (PLs) and are extensions to the core HAWQ functionality. HAWQ specifically supports the PL/Java, PL/Perl, PL/pgSQL, PL/Python, and PL/R procedural languages.
HAWQ additionally provides the `pgcrypto` extension for password hashing and data encryption.
This chapter describes these languages and extensions:
- <a href="builtin_langs.html">Using HAWQ Built-In Languages</a>
- <a href="using_pljava.html">Using PL/Java</a>
- <a href="using_plperl.html">Using PL/Perl</a>
- <a href="using_plpgsql.html">Using PL/pgSQL</a>
- <a href="using_plpython.html">Using PL/Python</a>
- <a href="using_plr.html">Using PL/R</a>
- <a href="using_pgcrypto.html">Using pgcrypto</a>