1. Кл. по уровню
1.1. низкого уровня
1.1.1. Java, Microsoft .NET, Assembler
1.2. высокого уровня
1.2.1. Компилируемые
1.2.1.1. C, C++, Паскаль, Delphi
1.2.2. Интерпретируемые
1.2.2.1. VisualBasic, Java,Python, PHP, Ruby, Perl
1.3. сверхвысокий уровень
1.3.1. Python, Ruby и Haskell
2. Кл. по виду обрабатываемой информации
2.1. Вычислительные языки
2.1.1. Python, Haskell Pascal
2.2. Языки символьной обработки
2.2.1. Perl, C, C++, QBasic, SNOBOL
3. Кл. по поколению
3.1. языки первого поколения
3.1.1. машинно–ориентированные с ручным управлением памяти на компьютерах первого поколения
3.2. языки второго поколения
3.2.1. с мнемоническим представлением команд, так называемые автокоды: Assembler
3.3. языки третьего поколения
3.3.1. общего назначения, используемые для создания прикладных программ любого типа: Algol, Cobol, Basic, PL/1, Pascal
3.4. языки четвертого поколения
3.4.1. усовершенствованные, разработанные для создания специальных прикладных программ, для управления базами данных: SQL, SGML ( HTML, XML )
3.5. языки программирования пятого поколения
3.5.1. языки декларативные, объектно–ориентированные и визуальные: InterLisp, ExpertList, IQLisp, SAIL