Язы́к программи́рования — формальный язык, предназначенный для записи компьютерных программ. Язык программирования определяет набор лексических, синтаксических и семантических правил, определяющих внешний вид программы и действия, которые выполнит исполнитель под её управлением.

Паска́ль — один из наиболее известных языков программирования, используется для обучения программированию в старших классах и на первых курсах вузов, является основой для ряда других языков.
Пролог — язык и система логического программирования, основанные на языке предикатов математической логики дизъюнктов Хорна, представляющей собой подмножество логики предикатов первого порядка.

Операцио́нная систе́ма, сокр. ОС — программное обеспечение, управляющее компьютерами и позволяющее запускать на них прикладные программы. Предоставляет программный интерфейс для взаимодействия с компьютером, управляет прикладными программами и занимается распределением предоставляемых ресурсов, в том числе между прикладными программами. Некоторые операционные системы позволяют прикладным программам работать с аппаратным обеспечением напрямую. В широком смысле под операционной системой понимается совокупность ядра операционной системы и работающих поверх него программ и утилит, предоставляющих интерфейс для взаимодействия пользователя с компьютером.

Лисп — семейство языков программирования, программы и данные в которых представляются системами линейных списков символов. Лисп был создан Джоном Маккарти для работ по искусственному интеллекту и до сих пор остаётся одним из основных инструментальных средств в данной области. Применяется он и как средство обычного промышленного программирования, от встроенных скриптов до веб-приложений массового использования, хотя популярным его назвать нельзя.
Логи́ческое программи́рование — парадигма программирования, основанная на математической логике — программы в ней задаются в форме логических утверждений и правил вывода. Наиболее известный язык логического программирования — Пролог.

Lua — скриптовый язык программирования, разработанный в подразделении Tecgraf Католического университета Рио-де-Жанейро (Бразилия). Интерпретатор языка является свободно распространяемым, с открытым исходным кодом на языке программирования Си.
Структу́рное программи́рование — парадигма программирования, в основе которой лежит представление программы в виде иерархической структуры блоков. Концептуализирована в конце 1960-х — начале 1970-х годов на фундаменте теоремы Бёма — Якопини, математически обосновывающей возможность структурной организации программ, и работы Эдсгера Дейкстры «О вреде оператора goto».
Мультипаради́гменный язы́к программи́рования — язык программирования, который был разработан специально как инструмент мультипарадигменного программирования, то есть выразительные возможности которого изначально предполагалось унаследовать от нескольких, чаще всего неродственных, языков различных парадигм.

Структура данных — программная единица, позволяющая хранить и обрабатывать (машиной) однотипные и/или логически связанные данные. Для добавления, поиска, изменения и удаления данных структура данных предоставляет некоторый набор функций, составляющих её интерфейс.
Параллельные вычисления — способ организации компьютерных вычислений, при котором программы разрабатываются как набор взаимодействующих вычислительных процессов, работающих параллельно (одновременно). Термин охватывает совокупность вопросов параллелизма в программировании, а также создание эффективно действующих аппаратных реализаций. Теория параллельных вычислений составляет раздел прикладной теории алгоритмов.
Switch-технология — технология разработки систем логического управления на базе конечных автоматов, охватывающая процесс спецификации, проектирования, реализации, отладки, верификации, документирования и сопровождения. Предложена А. А. Шалыто в 1991 году.
Автоматизированная система управления — комплекс аппаратных и программных средств, а также персонала, предназначенный для управления различными процессами в рамках технологического процесса, производства, предприятия. АСУ применяются в различных отраслях промышленности, энергетике, транспорте и т. п. Термин «автоматизированная», в отличие от термина «автоматическая», подчёркивает сохранение за человеком-оператором некоторых функций либо наиболее общего, целеполагающего характера, либо не поддающихся автоматизации. АСУ с Системой поддержки принятия решений (СППР) являются основным инструментом повышения обоснованности управленческих решений.
Би́товая опера́ция в программировании — операция над цепочками битов, как правило в этот класс включаются логические побитовые операции и битовые сдвиги. Применяются в языках программирования и цифровой технике, изучаются в дискретной математике.

Пото́к выполне́ния — наименьшая единица обработки, исполнение которой может быть назначено ядром операционной системы. Реализация потоков выполнения и процессов в разных операционных системах отличается друг от друга, но в большинстве случаев поток выполнения находится внутри процесса. Несколько потоков выполнения могут существовать в рамках одного и того же процесса и совместно использовать ресурсы, такие как память, тогда как процессы не разделяют этих ресурсов. В частности, потоки выполнения разделяют последовательность инструкций процесса и его контекст — значения переменных, которые они имеют в любой момент времени.
Oz — учебный язык программирования высокого уровня, в котором совмещены функциональная, процедурная, декларативная семантики.
Alice — язык функционального программирования, разработанный в лаборатории Programming Systems Lab в Саарском университете. Это диалект языка Standard ML, дополненный ленивыми вычислениями, конкурентностью и программированием в ограничениях.
Программирование в ограничениях — парадигма программирования, в которой отношения между переменными указаны в форме ограничений. Ограничения отличаются от общих примитивов языков императивного программирования тем, что они определяют не последовательность шагов для исполнения, а свойства искомого решения, что делает такое программирование формой декларативного программирования. Возможны разные виды ограничений: те, которые используются в задачах удовлетворения ограничений, те, которые решаются симплекс-алгоритмом и другие. Ограничения, как правило, встроены в язык программирования или осуществляются через отдельные программные библиотеки.
В информатике конструкции future
, promise
и delay
в некоторых языках программирования формируют стратегию вычисления, применяемую для параллельных вычислений. С их помощью описывается объект, к которому можно обратиться за результатом, вычисление которого может быть не завершено на данный момент.