standard programming language functional-programming ocaml ml

functional programming - programming - ¿Qué tutorial de inglés aconsejarías para aprender OCaml?



ocaml programming language (7)

Acabo de comenzar con Ocaml, y estos son los tutoriales que me resultan más útiles:

Documentación y manual del usuario - más útil y oficial.

Introducción a Caml : esta la usé en mis primeros días (recientemente) y fue muy útil debido a su simplicidad.

Quiero anunciar OCaml a los principiantes, y estoy buscando buenos tutoriales en inglés; no que solo hayas oído hablar, sino que en realidad lo has probado y encontrado útil ...


Aquí hay un libro destinado a los recién llegados a la programación y también a aquellos que conocen algo de programación pero desean aprender programación en el paradigma orientado a la función, o aquellos que simplemente quieren aprender OCaml.

Nicolas Monje creó un puerto OCaml del libro Cómo pensar como un informático .

Según el sitio web, la versión PDF del libro debe ser descargada.

Del libro:

El objetivo de este libro es enseñarte a pensar como un científico informático. Esta forma de pensar combina algunas de las mejores características de las matemáticas, la ingeniería y las ciencias naturales. Al igual que los matemáticos, los informáticos utilizan lenguajes formales para denotar ideas (específicamente cálculos). Al igual que los ingenieros, diseñan cosas, ensamblan componentes en sistemas y evalúan compensaciones entre alternativas. Al igual que los científicos, observan el comportamiento de sistemas complejos, forman hipótesis y prueban predicciones.

La habilidad más importante para un informático es la resolución de problemas . La resolución de problemas significa la capacidad de formular problemas, pensar creativamente sobre soluciones y expresar una solución de manera clara y precisa. Como resultado, el proceso de aprender a programar es una excelente oportunidad para practicar las habilidades de resolución de problemas. Es por eso que este capítulo se llama "El camino del programa".

En un nivel, aprenderás a programar, una habilidad útil por sí misma. En otro nivel, usarás la programación como un medio para un fin. A medida que avanzamos, ese final se volverá más claro.


El tutorial que utilicé para aprender y el que siempre recomiendo a los principiantes - ocaml-tutorial.org (reflejado en ocamlcore cuando el sitio original se redujo).


Hay un nuevo libro " Real World OCaml " de Jason Hickey que se publicará pronto. En el sitio web hay una beta pública disponible de forma gratuita. A pesar del hecho de que el libro aún no está terminado, no noté ningún error importante o irrelevancia.

Me dio una comprensión completa de OCaml. Contiene muchos ejemplos que ilustran conceptos y podría considerarse fácilmente como un tutorial. También me gustó que cubre en parte los módulos estándar ( List , ListLabels , Map , Sys , String , pueden ser algunos otros).

La sección "El sistema de tiempo de ejecución" de este libro es muy útil. Proporciona detalles sobre la implementación del compilador, la gestión de la memoria, la vinculación con el código extranjero, la intuición del costo del idioma. Lo último lo considero muy importante, porque muchos libros de programación funcional cubren conceptos sin decir qué tan caros son en términos de memoria y tiempo. Recomiendo altamente este libro, especialmente cuando hay una versión en línea gratuita.


Me gusta bastante el libro Developing Applications With Objective Caml : creo que el título debería actualizarse para reflejar la decisión de nombrar ''OCaml''. Es antiguo y, por lo tanto, está un poco desactualizado, pero solo en aspectos menores; por ejemplo, presenta la sintaxis de la transmisión como parte del lenguaje principal, pero ahora se subcontrata como una extensión Camlp4. El libro está sorprendentemente completo y ya hay mucha carne en los capítulos 2, 3 y 4.

Este libro cubre un poco de la programación del sistema, pero si es lo que le interesa al lector, preferiría recomendar la programación del sistema Unix del libro por separado en OCaml , también traducido al inglés por un esfuerzo de la comunidad.

Finalmente, si uno quiere descubrir los fundamentos teóricos de OCaml, si encuentra que el libro U3, Uso, comprensión y desentrañar el lenguaje OCaml es un gran recurso. Pero es solo para lectores que ya saben sobre OCaml.

PD: Tengo una muy buena opinión sobre la introducción de Jason Hickey a Objective Caml también, pero no puedo decir que lo haya leído en su totalidad, solo lo he echado un vistazo. Ese es el problema con los libros para "principiantes", realmente puedes leer a lo más uno bueno.


Para mí, la principal es:

$ apt-cache show ocaml-book-en Package: ocaml-book-en Source: ocaml-book Version: 1.0-5 Installed-Size: 7061 Maintainer: Debian QA Group <[email protected]> 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.

:)

También hay un gran libro para la programación de sistemas en OCaml y recursos de estilo de libro de cocina here .


Pensé que la Introducción a Objective Caml de Jason Hickey era muy buena (el único texto real sobre el idioma que he leído y cómo empecé). La documentación de INRIA también está bien; y leer las firmas de los módulos por sí mismos es bastante instructivo una vez que aprendes a hacerlo;)

Lo creas o no, OCaml fue el primer idioma que aprendí (realmente).