Какой урок английского вы бы посоветовали изучать OCaml?
Я хочу рекламировать OCaml для начинающих, и я ищу хорошие учебники на английском языке; не то, что вы только слышали, а то, что вы на самом деле пытались и нашли полезным...
7 ответов
Мне очень нравится книга " Разработка приложений с помощью Objective Caml" - я думаю, что название должно быть обновлено, чтобы отразить решение о присвоении имен OCaml. Он старый и поэтому немного устарел, но только по второстепенным аспектам - например, он представляет синтаксис потока как принадлежащий базовому языку, но теперь он передается на аутсорсинг как расширение Camlp4. Книга на удивление завершена, и в главах 2, 3 и 4 уже есть много мяса.
В этих книгах рассказывается о системном программировании, но если это то, что интересует читателя, я бы предпочел отдельную книгу по системному программированию Unix на OCaml, также переведенную на английский язык усилиями сообщества.
Наконец, если кто-то захочет открыть теоретические основы OCaml, если вы найдете книгу U3 " Использование, понимание и раскрытие языка OCaml" как отличный ресурс. Но это только для читателей, которые уже знают об OCaml.
PS: У меня очень хорошее мнение о введении Джейсона Хики в Objective Caml, но я не могу сказать, что прочитал его полностью, только взглянул на него. Вот в чем проблема с книгами для начинающих, вы можете прочитать не более одной хорошей книги.
Для меня основным является:
$ apt-cache show ocaml-book-en
Package: ocaml-book-en
Source: ocaml-book
Version: 1.0-5
Installed-Size: 7061
Maintainer: Debian QA Group <packages@qa.debian.org>
Architecture: all
Recommends: www-browser | pdf-viewer
Description-en: English book: "Developing applications with Objective Caml"
This is the English translation of the O'Reilly's OCaml French
book "Developpement d'applications avec Objective Caml" that can
be found in the ocaml-book-fr package.
.
This package contains both the HTML and PDF version of the book.
:)
Здесь также есть отличная книга по системному программированию на OCaml и кулинарный ресурс.
Учебник, который я использовал при обучении, и тот, который я всегда рекомендую новичкам - ocaml-tutorial.org (отраженный на ocamlcore, когда исходный сайт вышел из строя).
Вот книга, предназначенная для новичков в программировании, а также для тех, кто знаком с программированием, но хочет изучать программирование в функционально-ориентированной парадигме, или для тех, кто просто хочет изучать OCaml.
Портал OCaml книги " Как думать, как ученый " был создан Николасом Монже.
По данным сайта, PDF-версию книги следует скачать
Из книги:
Цель этой книги - научить вас мыслить как ученый. Этот способ мышления сочетает в себе некоторые из лучших особенностей математики, техники и естествознания. Как и математики, ученые-компьютерщики используют формальные языки для обозначения идей (особенно вычислений). Как и инженеры, они проектируют вещи, собирают компоненты в системы и оценивают компромиссы между альтернативами. Как и ученые, они наблюдают за поведением сложных систем, формируют гипотезы и тестируют прогнозы.
Единственный самый важный навык для компьютерного ученого - решение проблем. Решение проблем означает способность формулировать проблемы, творчески думать о решениях и четко и точно выражать решение. Как выясняется, процесс обучения программированию - это прекрасная возможность попрактиковаться в решении проблем. Вот почему эта глава называется "Путь программы".
На одном уровне вы будете учиться программировать, сам по себе полезный навык. На другом уровне вы будете использовать программирование как средство для достижения цели. По мере того, как мы продвигаемся, этот конец станет более ясным.
Я только начал с Ocaml, и эти уроки, которые я считаю наиболее полезными:
Документация и руководство пользователя - самое полезное и официальное
Введение в Caml - это я использовал в мои первые дни (недавно), и это было очень полезно из-за его простоты
Я думал, что Введение Джейсона Хики в Objective Caml было очень хорошим (единственный фактический текст на языке, который я прочитал, и как я начал). Документация INRIA также хороша; и чтение сигнатур модулей само по себе весьма поучительно, как только вы освоитесь с ним;)
Верьте или нет, OCaml был первым языком, который я (действительно) выучил.
В ближайшее время выйдет новая книга Джейсона Хикки " Real World OCaml". На сайте есть общедоступная бета-версия, доступная бесплатно. Несмотря на то, что книга еще не закончена, я не заметил каких-либо серьезных ошибок или неуместностей.
Это дало мне полноценное понимание OCaml. Он содержит множество примеров, иллюстрирующих концепции, и может быть легко рассмотрен как учебник. Мне также понравилось, что это частично покрывает стандартные модули (List
, ListLabels
, Map
, Sys
, String
могут быть и другие).
Раздел "Система времени выполнения" в этой книге очень полезен. Он предоставляет подробную информацию о реализации компилятора, управлении памятью, связи с иностранным кодом, интуитивно понятной стоимости языка. Последнее я считаю очень важным, потому что многие книги по функциональному программированию охватывают концепции, не говоря о том, насколько они дороги с точки зрения памяти и времени. Настоятельно рекомендую эту книгу, особенно когда есть бесплатная онлайн-версия.