POP-11 je univerzální, souběžný, objektově orientovaný programovací jazyk s dynamickou správou paměti a garbage collection. Navrhl jej Rodney Norman a původně byl implementován v systému Poplog.
POP-11 má jednoduchou syntaxi, která je podobná jazyku Pascal. Jedná se o plně typovaný jazyk s bohatou sadou datových typů zahrnující celá čísla, floaty, řetězce, symboly, seznamy, vektory, pole, záznamy, soubory, proudy, procedury a funkce. POP-11 má také výkonný systém modulů, který umožňuje programátorovi modulovat svůj kód a vytvářet knihovny kódu, které lze opakovaně používat v jiných programech.
POP-11 je souběžný jazyk, což znamená, že je možné psát programy, které mohou běžet paralelně na více procesorech. Je také možné psát distribuované programy, které mohou běžet na síti počítačů.
POP-11 je objektově orientovaný jazyk. To znamená, že data a kód lze sdružovat do objektů. Objekty mohou dědit chování od jiných objektů. To umožňuje programátorovi vytvářet složité datové struktury a psát kód, který je snadno pochopitelný a udržovatelný.
POP-11 je dynamický jazyk. To znamená, že proměnné lze vytvářet a ničit za běhu. Znamená to také, že programy lze za běhu upravovat. Díky tomu je POP-11 ideálním jazykem pro tvorbu prototypů a pro psaní softwaru, který musí být flexibilní a přizpůsobivý.
POP-11 je jazyk sběrného koše. To znamená, že paměť je automaticky spravována jazykem a že programátor nemusí explicitně alokovat a dealokovat paměť. To snižuje pravděpodobnost úniku paměti a usnadňuje psaní a údržbu kódu.