2012-02-20 8 views

Respuesta

22

Me gusta bastante el libro Developing Applications With Objective Caml - Supongo que el título debe actualizarse para reflejar la decisión de nomenclatura 'OCaml'. Es antiguo y, por lo tanto, está ligeramente desactualizado, pero solo en aspectos menores, por ejemplo, presenta la sintaxis de la transmisión como perteneciente al lenguaje central, pero ahora se subcontrata como una extensión Camlp4. El libro es sorprendentemente completo, y ya hay mucha carne en los capítulos 2, 3 y 4.

Este libro cubre un poco la programación del sistema, pero si es lo que le interesa al lector, preferiría recomendarlo el libro separado Unix system programming in 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 encontró el libro U3, Using, Understanding, and Unraveling the OCaml Language es un gran recurso. Pero es solo para lectores que ya saben sobre OCaml.

PD: Tengo una muy buena opinión sobre el introduction to Objective Caml de Jason Hickey también, pero no puedo decir que lo haya leído en su totalidad, solo lo eché un vistazo. Ese es el problema con los libros para "principiantes", realmente se puede leer como máximo uno bueno.

+0

Estos son buenos libros, pero no son realmente tutoriales, ¿no? –

+0

¡Respuesta muy útil! – xyz

8

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 system programming in OCaml y el recurso de estilo libro de cocina here.

+0

No sabía que el libro de programación del sistema se había traducido al inglés + OCaml, ¡lindo! –

5

El tutorial que utilizo al aprender y el que siempre recomiendo a los principiantes - ocaml-tutorial.org (reflejado en ocamlcore como el sitio original se cayó).

+0

Creo que este tutorial ahora reside oficialmente en http://www.ocaml-lang.org/tutorials/ – lukstafi

+1

Como alguien que nunca ha hecho Ocaml, el único problema que puedo ver con estos documentos es que no hay una introducción. Nada para presentar al usuario y dar una breve descripción del propósito/patrimonio del idioma y una guía rápida para instalar un entorno y un puntero a un editor, etc. – sayth

3

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

Un OCaml port del libro How to Think Like a Computer Scientist ha sido creado por Nicolas Monje.

De acuerdo con la página web, el PDF version del libro se debe descargar

Del libro:

El objetivo de este libro es enseñar a pensar como un científico de la computación. 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 científicos informáticos utilizan los lenguajes formales para designar ideas (específicamente cálculos). Al igual que los ingenieros, diseñan cosas, ensamblan componentes en los sistemas y evalúan los intercambios entre las 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 científico informático es solución de problemas. La resolución de problemas significa la capacidad de formular problemas, pensar creativamente sobre soluciones y expresar una solución clara y precisa. Como resultado, el proceso de aprender a programar es una excelente oportunidad para practicar habilidades de resolución de problemas. Es por eso que este capítulo se llama, "La forma del programa."

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

+0

La última vez que revisé, no estaba completamente terminado. Es ahora ? –

+0

Lo revisé y parece que es un trabajo en progreso y el autor lo está trabajando activamente. – Animesh

+0

El sitio thinkocaml.com está muerto a partir de diciembre de 2015. –

2

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

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

2

Hay un nuevo libro "Real World OCaml" de Jason Hickey que se publicará próximamente. En the web-site hay una versión beta pública disponible de forma gratuita. A pesar 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 ser fácilmente considerado como un tutorial. También me gustó que cubra parcialmente los módulos estándares (List, ListLabels, Map, Sys, String, pueden ser algunos otros).

La sección "The Runtime System" en este libro es muy útil. Proporciona detalles sobre la implementación del compilador, la administración de la memoria, el enlace con el código externo, la intuición del costo del idioma. Este último lo considero muy importante, porque muchos libros de programación funcional cubren conceptos sin decir lo caros que son en términos de memoria y tiempo. Recomiendo encarecidamente este libro, especialmente cuando hay una versión gratuita en línea.

Cuestiones relacionadas