Важные вещи, которые нужно знать о языке программирования Haskell

Содержание:

Anonim

Язык программирования на Haskell. Возможно, вы читали о многих языках. Но когда вы слышите о Хаскеле, первое, что приходит на ум, это «Вот еще один так называемый язык подражателей». Первый вопрос, который приходит на ум: ПОЧЕМУ? Почему так много языков? Почему это должно быть так сложно? Почему Python или Ruby так просты по сравнению с C или Java? И какого чёрта это Хаскелл?

Не беспокойся Я здесь сегодня, чтобы ответить на все ваши вопросы. Но обо всем по порядку, что такое Haskell? Обычно вы не найдете много людей, изучающих или говорящих об этом языке. Причина в том, что Haskell не так прост, как C или Python. ДА! Я сказал C. Я программист на C с последних 4 лет, и я на самом деле нахожу это очень интересным. Но с Хаскеллом дело обстоит иначе.

Я изучил Haskell, потому что нахожу его очень сложным, в отличие от C или Python. Python - это очень классный язык и очень гибкий. Вы можете почти все, что вы хотите с этим. Ваше воображение - это только предел в Python. Теперь, вместо того, чтобы хвастаться Python, давайте начнем с Haskell. Потому что для этого мы здесь, верно?

Но прежде чем вы начнете читать дальше, позвольте мне предупредить вас. Этот язык не для начинающих; По крайней мере, не для начинающих. Если у вас нет опыта программирования, Haskell даст вам ощущение ROCKET SCIENCE. И это жирным шрифтом. Программисты это поймут.

Язык программирования Haskell - это чисто функциональный язык. Или правильный термин будет математическим. Любой, кто любит математику, будет очень доволен динамическим программированием на Haskell, особенно теоремами.

Но что такое функциональное программирование?

Точнее говоря, в функциональном языке программирования оригинальным методом вычисления является введение функций в аргументы. Наряду с другими функциями, предоставляемыми этими типами языков, функциональное программирование предлагает чрезвычайно маленький и компактный метод кодирования программ, в том числе большие методы абстракции для их структурирования, и ему необходимо мышление, которое знает, как говорить по математике и которое поддерживает рассуждения для программ, несколько похоже на теоремы.

Такие языки являются ведущими в разработке дизайна языков программирования. Все остальные языки программирования, такие как PHP, Basic, C ++, Java Python, Ruby, JavaScript и Scala; все это высокоуровневое программирование, которое выражает лямбда-выражения или замыкания.

Чисто функциональные языки вводят полностью неизменные структуры, и у этих функций нет никаких побочных эффектов. То, что делает эта функция, это то, что она принимает все неизменяемые структуры вместе как некоторый ввод, а затем создает новую структуру, аналогичную данному выводу.

Примеры добавления целых чисел в:

Python:

>>>a=2

>>>b=3

>>>a+b

>>>5

C ++:

template

struct add (

static constexpr int value = x + y;

);

int main() (

auto z = add::value;

std::cout << z << std::endl;

return 0;

)

Haskell:

add :: Int -> Int -> Int

add de = d + e

main :: IO ()

main = do

let f = add 1 2

putStrLn $ show f

Хаскель на самом деле отличный язык программирования. Это математика чрезвычайно сложна и прямолинейна в отличие от других, где нельзя доказать, что программы правильны, и в большинстве случаев здесь, в Haskell, они могут, и если они скомпилируются, они будут работать без каких-либо проблем. Это однако вводит новые проблемы.

Допустим, например, что вы не можете изменить даже одну переменную здесь (переменная означает переменную). Рекурсия является ключом ко всему здесь. Но вам не нужно беспокоиться. Как только вы это освоите, вы почувствуете себя как дома, пишите приложения на Haskell. Единственное, о чем вам нужно было бы беспокоиться, это когда я сказал: «Если они компилируются». Хехехе … это самая хитрая часть в Haskell: "Компиляция".

Рекомендуемые курсы

  • Курсы обучения XML
  • Экзаменационные курсы CCNA
  • Курс по ОС UNIX и Linux
  • Онлайн курс HTML 5

Почему язык программирования Haskell?

Что касается вышеприведенного вопроса, я спрашиваю: «Почему бы и нет?». Хаскель в основном хороший язык для изучения. Здесь ваш код прост и самодостаточен. Здесь нет стычек или ненужных отступов. Язык программирования Haskell также хорошо работает с идеями. Вы, имея приличный опыт, можете писать программы как на высоком, так и на низком уровне программирования.

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

Хаскель - хорошее начало, чтобы выбрать в качестве первого языка. Многие препятствия, с которыми сталкиваются люди при изучении Haskell, возникают потому, что они слишком привыкли к другим языкам высокого уровня, таким как Python или Ruby, но дело в том, что язык программирования Haskell слишком отличается от них. Таким образом, если вы вообще ничего не знаете о программировании, у вас не возникнет проблем с изучением его как первого языка.

Также гораздо проще перейти от Хаскелла к изучению чего-то другого, чем наоборот. Теперь вы можете подумать, что в начале я сказал, что этот язык не для начинающих. Да, я сказал это, потому что хотел убедиться, что вы не тратите 30 минут на чтение этого. Если вы уже потратили столько времени на чтение о Haskell, это означает, что у вас есть решимость учиться. И это то, что вам нужно выучить этот язык.

Минусы

Haskell - отличный язык, но, как и любые другие языки, язык программирования Haskell имеет свой набор черт. Например, инструментарий, сообщения об ошибках и способ построения его системы являются более сложными, чем они должны быть. Если вы работаете в GHCi, вы наверняка заметите, что сообщения об ошибках здесь не так полезны, как в Python, Golang или Scala.

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

Хотя haskell звучит слишком резко, как язык для начинающих, но как только вы освоите основы, на самом деле его легко перенести либо на языки низкого уровня, либо на языки высокого уровня благодаря его очень гибким характеристикам, в отличие от таких языков, как python или Perl, если вы изучите это сначала, вы, вероятно, никогда не будете думать об изучении языков низкого уровня из-за его отчужденной структуры кода.

Haskell, это довольно большой язык для изучения в деталях. В целом, я бы сказал, что Haskell - отличный первый язык для изучения. Единственное, о чем стоит беспокоиться, это то, что вам может потребоваться больше усилий, чтобы начать работу и продолжать работать на постоянной основе из-за проблем с ее инструментами, особенно если вы хотите создать интересную программу.

Если бы я стремился обучить людей языку программирования Haskell, я бы приложил больше усилий, чтобы сделать процедуру установки более безболезненной. Нужно иметь правильный набор модулей, правильную версию, установленную так, чтобы они правильно настроили GHCi для компиляции проблем.

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

Самый ожидаемый вопрос

Теперь для самого долгожданного вопроса … Каковы практические применения Haskell?

Haskell, безусловно, широко используется в индустрии, но не так часто, как C # или Java. Так что, если вы просто хотите научиться этому, чтобы получить работу по программированию на Haskell, это может быть пустой тратой времени. Лучшая причина изучить Haskell - познакомить вас с подходом функционального стиля. С Haskell это произойдет гораздо быстрее, чем с другим функциональным языком, таким как F # или Scala. Вы также можете проверить мой следующий блог на Haskell vs Scala, чтобы узнать разницу.

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

Вывод

Конечная точка всего этого блога - если вы ищете работу в Haskell; подождите, пока НАСА или АНБ не начнут нанимать начинающих программистов на Haskell для работы. Ага! Вот как это редко. Но если вы учитесь, потому что любите испытания, то Haskell - это путь. Это сделает ваш код намного лучше на любом языке.

Это поможет вам правильно понять вашу проблему, разбить ее на нужные части и уменьшить необходимость отладки. Если вы изучаете Haskell и некоторые другие языки программирования, то Haskell лучше всего подходит для вас. Потому что это сделает мудрый программист.

Первый источник изображения: pixabay.com

Статьи по Теме:-

Вот несколько статей, которые помогут вам получить более подробную информацию о языке программирования Haskell, поэтому просто перейдите по ссылке.

  1. Преимущества языка программирования схем
  2. Языки высокого уровня против языков низкого уровня - как они отличаются
  3. Комплексное руководство по языку программирования схем
  4. Лучший выбор языков программирования для изучения алгоритмов
  5. 10 интересных вещей о языке программирования Java
  6. Карьера в R Программирование