Haskell: различия между версиями

Содержимое удалено Содержимое добавлено
м робот косметические изменения
Строка 9:
'''Haskell''' — функциональный язык программирования. Если вы уже программировали на чём-либо и хотите посмотреть как Haskell работает и его отличия от других языков, вы можете прочитать [[/Overview|краткий обзор]].
 
Haskell уникален по двум причинам. Во-первых, он это ''чистый'' функциональный язык. Если у вас есть функция и вы вызываете её в двух разных местах с одинаковыми аргументами, то вы гарантированно получите одинаковые результаты в обоих случаях. Во-вторых, Haskell обеспечивает самую современную систему типов, включая такие возможности как классы типов и GADT. Навряд ли стоит ожидать, что эти термины что-то означают для вас в настоящее время, но подождите - эта книга поможет вам. Итак, в чем привлекательность Haskell для его поклонников? В том, что он включает в себя уникальные и современные конструкции? Нет. Людям, программирующим на Haskell нравится их работа, поскольку имея дело с чистыми функциями намного легче понять свои программы и доказать, что они корректны. Кроме того, развитая система типов помогает вылавливать наши ошибки, как глупые, так и весьма коварные.
Haskell уникален по двум причинам. Во-первых, он это ''чистый'' функциональный язык. Если у вас есть функция и вы вызываете её в двух
разных местах с одинаковыми аргументами, то вы гарантированно получите одинаковые результаты в обоих случаях. Во-вторых, Haskell обеспечивает самую современную систему типов, включая такие возможности как классы типов и GADT. We don't expect you to know what these terms mean for now, but we do hope they'll be rolling smoothly off your tongue by the time you are done with this book. So, why do Haskellers like the language then? Is it just because we like using things that are unique and modern? No, Haskell programmers enjoy their work because dealing with just pure functions makes it so much easier to understand our programs and prove them correct. Moreover, having an advanced type system helps us catch our mistakes, both the silly and profound ones.
 
Цель этой книги ввести вас как в мир языка Haskell, от основ до сложных понятий, и, одновременно, в мир компьютерного программирования. Вы можете быть опытным программистом, тем более мы просим вас быть особенно внимательным и терпеливым в процессе обучения. При всей своей похожести, языки, с которыми вы, скорее всего, наиболее знакомы, сильно отличаются от Haskell, и навыки, привитые ими могут затруднить понимание, как устроен наш язык: ничего сложного, но по-другому. Поэтому отнеситесь к этому, как к приключению, погружению в совершенно другой мир, смотря на него через затейливую математическую призму функционального программирования.
In this book we aim to introduce you both to the Haskell language, from the very basics to its most advanced features, and to computer programming in general. Seasoned programmers, we urge you to be especially patient with this process. In all likelihood, the languages you are most familiar with differ greatly from Haskell, and habits from those languages might make it more difficult to understand how things work: simple, but different. So treat this as an adventure, a whole different world, seeing programming through the warped and mathematical mindset of a functional programmer.
 
== Overview ==