APL (A Programming Language) è un linguaggio di programmazione generico di terza generazione (3GL) che consente di esprimere determinate manipolazioni di dati con uno speciale set di simboli non ASCII, risultando in programmi più brevi di quanto sarebbe possibile utilizzando la maggior parte altre lingue. La notazione di APL consente la manipolazione della matrice e le funzioni di ricorsione da incorporare in espressioni semplici piuttosto che richiedere più istruzioni di linguaggio. L'APL è più spesso considerato come un linguaggio per il calcolo scientifico, ma può essere utilizzato anche per altri scopi. I programmi possono essere sviluppati in modo interattivo e di solito vengono interpretati piuttosto che compilati. I simboli speciali richiedono il supporto della tastiera e editor specifici in modo che i simboli possano essere visualizzati e stampati.