REFAL je univerzální, multiparadigmatický programovací jazyk vytvořený v 60. letech 20. století. Je založen na myšlence funkcionálního programování, ale podporuje také procedurální, objektově orientované a logické programovací paradigma. Byl navržen se záměrem, aby se snadno učil a používal, a jeho syntaxe je podobná syntaxi jiných jazyků založených na ALGOLu.
REFAL má řadu vlastností, které jej činí mezi programovacími jazyky jedinečným. Asi nejvýznamnější je, že používá systém "porovnávání vzorů" pro své proměnné, což umožňuje stručnější a efektivnější kód. Má také vestavěný garbage collector, který pomáhá řídit využití paměti.
Navzdory mnoha svým vlastnostem se jazyk REFAL mimo své rodné Rusko příliš neujal. Přesto zůstává zajímavým a výkonným jazykem, který stojí za to, aby se ho naučil každý programátor.