Ответ 1
Вы попробовали сайт TryOCaml? Это может быть хорошим началом.
Хорошо, я программист на Java без каких-либо знаний по функциональному программированию.
Теперь я в настоящее время изучаю OCaml в течение 2 недель, и я не знаю даже о OCaml.
Здесь предлагаются несколько учебников и книг:
https://stackoverflow.com/info/2073436/ocaml-resources
но ни один из них не кажется дружелюбным. На самом деле, я имею в виду.
Нет учебников или книг, по крайней мере, дает мне быстрый старт Hello World
. через две недели я даже не знаю, что такое program entrance
Ocaml (например, a main()
).
Я даже не знаю, как действительно писать коды OCaml в файл, и каким-то образом позволить OCaml скомпилировать его.
Хорошо, жалобы закончены.
Я должен научиться этому и делать это хорошо. Итак, не могли бы вы дать мне несколько советов по изучению этого? Я чувствую, что OCaml очень мрачен и трудно понять. Пожалуйста, просветите мою дорогу.
Вы попробовали сайт TryOCaml? Это может быть хорошим началом.
Я впервые встретился с OCaml 4 года назад, и мне нужно было добавить некоторые небольшие функции к существующему студенческому проекту в университете. Я начал с учебник OCaml, и я понял, насколько это удивительный язык. Затем я попытался написать более или менее большие программы в OCaml и начал задавать вопросы сообщества. По моему опыту, я думаю, вам нужно то же самое. Возьмите любимую область программирования (веб-инструменты, инструменты unix, графику и игры, настольные приложения), возьмите проект, который не слишком большой или сложный для вашего первого приложения. Я думаю, что сообщество OCaml может помочь вам решить. Вы можете связаться с ними в maillist, но я больше предпочитаю IRC-сервер Freenode. А потом просто напишите какой-то код, и если что-то странно спросите!
С наилучшими пожеланиями, Какаду
P.S. Я надеюсь, что OCaml станет вашей следующей большой любовью, поскольку это стало для многих из нас.
В моем личном опыте я обнаружил, что хорошее знание λ-исчисления обеспечивает хороший вход (платформу) для изучения функционального языка любого. Но опять же это то, как я познакомился с функциональным программированием, поэтому я не могу сравнивать его с другими подходами.
Вы можете получить хорошее введение в λ-исчисление из этого урока. Однако это требует немного математического мышления и может быть слишком скучным, чтобы учиться самостоятельно. Было бы идеально взять модуль на λ-исчисление или основы функционального программирования из университета.
Обратите внимание, однако, что λ-исчисление в основном говорит только о аспекте functions
. Но как только вы понимаете функциональный способ вычисления, остальная часть языка должна быть легко решена (по крайней мере, так, как я себя чувствовал).
Не уверен, помог ли я или сделал это более запутанным.