Haskell - Обзор
Haskell - это функциональный язык программирования, специально разработанный для обработки символьных вычислений и приложений обработки списков. Функциональное программирование основано на математических функциях. Помимо Haskell, некоторые из других популярных языков, которые следуют парадигме функционального программирования, включают: Lisp, Python, Erlang, Racket, F #, Clojure и т. Д.
В conventional programing, инструкции воспринимаются как набор объявлений в определенном синтаксисе или формате, но в случае functional programing, все вычисления рассматриваются как комбинация отдельных математических функций.
Работаем с Haskell
Haskell - широко используемый чисто функциональный язык. Здесь мы перечислили несколько моментов, которые делают этот язык таким особенным по сравнению с другими традиционными языками программирования, такими как Java, C, C ++, PHP и т. Д.
Functional Language- В обычном языке программирования мы поручаем компилятору ряд задач, которые не что иное, как сообщать вашему компьютеру «что делать» и «как делать?» Но в Haskell мы скажем нашему компьютеру, «что это такое?»
Laziness- Haskell - ленивый язык. Поlazy, мы имеем в виду, что Haskell не будет вычислять выражения без всякой причины. Когда механизм оценки обнаруживает, что выражение необходимо оценить, он создаетthunk data structure собрать всю необходимую информацию для этой конкретной оценки и указатель на нее thunk data structure. Механизм оценки начнет работать только тогда, когда потребуется оценить это конкретное выражение.
Modularity- Приложение Haskell - это не что иное, как набор функций. Можно сказать, что приложение Haskell - это набор множества небольших приложений Haskell.
Statically Typed- В обычном языке программирования нам нужно определить ряд переменных вместе с их типом. Напротив, Haskell - это строго типизированный язык. Под термином «строго типизированный язык» мы подразумеваем, что компилятор Haskell достаточно умен, чтобы определить тип объявленной переменной, поэтому нам не нужно явно указывать тип используемой переменной.
Maintainability - Приложения Haskell имеют модульную структуру, поэтому их обслуживание очень просто и экономично.
Функциональные программы более параллельны, и они следуют параллелизму в выполнении, чтобы обеспечить более точную и лучшую производительность. Haskell - не исключение; он был разработан таким образом, чтобы справляться сmultithreading эффективно.
Привет, мир
Это простой пример, демонстрирующий динамизм Haskell. Взгляните на следующий код. Все, что нам нужно, это всего лишь одна строка, чтобы напечатать «Hello Word» на консоли.
main = putStrLn "Hello World"
Как только компилятор Haskell встречает приведенный выше фрагмент кода, он быстро дает следующий результат:
Hello World
В этом руководстве мы предоставим множество примеров, чтобы продемонстрировать мощь и простоту Haskell.