Добавить в корзинуПозвонить
Найти в Дзене

Языки программирования с высоким уровнем сложности

Haskell
Это функциональный язык программирования. По большому счету, это может быть плюсом, если вы профессиональный математик, но большая часть программистов привыкла к императивному программированию. Языки делятся на парадигмы и их две: императивная и декларативная. Разумеется, они резко контрастируют между собой.
Императивные языки: Python, JS, C++ - в этих языках мы встречаем процедурный,

Haskell

Это функциональный язык программирования. По большому счету, это может быть плюсом, если вы профессиональный математик, но большая часть программистов привыкла к императивному программированию. Языки делятся на парадигмы и их две: императивная и декларативная. Разумеется, они резко контрастируют между собой.

Императивные языки: Python, JS, C++ - в этих языках мы встречаем процедурный, структурный, ООП и другие подходы к написанию кода.

Декларативные языки: Haskell, sql, prolog. Функциональное программирование - одна из концепций декларативных языков. В функциональном программировании нет переменных, циклов и отсутствует какая-либо работа с памятью. Это языки в которых вы описываете решение какой-либо задачи при помощи выражения. То есть вы говорите не как нужно сделать, а что нужно сделать. Именно по этой причине функциональные языки гораздо проще усваиваются математиками.

Assembler

Также является сложным языком. И не потому, что это низкоуровневый язык, а потому что для эффективного программирования на Assembler вам придется изучать и учитывать железо. И это очень важно, потому что вам придется учитывать архитектуру, в которой будет использоваться код. То есть в архитектуре процессоров Х86 у вас будет только один стек, мало регистров, и к тому же ячейка памяти не будет давать никакой информации о типе хранящегося там значения. Программы написанные на Assembler отличаются очень высокой скоростью. На Assembler создана операционная система "Колибри", которая умещается в 1,5 MB. Все это говорит о том, что преимущества этого языка можно очень эффективно использовать.

C++

Относится к высокоуровневым языкам. Он является наследником языка C, куда добавили ООП и много других вещей. И эти другие вещи часто реализованы не самым лучшим образом. Все это создает сложности в восприятии языка. Нередко C++ сравнивают с JS. Это происходит не только потому, что у этих языков CLI - синтаксис, но и потому, что в C++ как и в JS хватает разного рода странностей. Все это вместе с шаблонами, метапрограммированием, а также проблем связанных со static-таймингом, указателями, областями видимости и ООП подходом делает С++ сложным языком программирования , именно по части восприятия. Что же касается архитектуры языка С++, то она также оставляет желать лучшего.