OCaml Learning Materials

OCaml is an interesting functional language. There are lots learning materials on the Internet. I compile a list of resources for OCaml learning and reference.

Recommended OCaml learning and reference material

Online book of Real World OCaml by Yaron Minsky, Anil Madhavapeddy, Jason Hickey.

A very good tutorial by Jason Hickey: http://www.cs.caltech.edu/courses/cs134/cs134b/book.pdf.

The OCaml system release 3.12 Documentation and user’s manual: http://caml.inria.fr/pub/docs/manual-ocaml/.

OCaml Style Guides

CS3110 OCaml Style Guide

Caml programming guidelines

Other OCaml learning materials

OCaml-Tutorial.org: mirror

OCaml Homepage: http://caml.inria.fr/

Introduction to OCaml on Wikipedia: https://en.wikipedia.org/wiki/OCaml

Introducing OCaml: http://www.ffconsultancy.com/products/ocaml_journal/free/introduction.html

The Harvard CS51 course which is introduced with OCaml.

A Concise Introduction to Objective Caml by David Matuszek

A good “why OCaml”: https://www.cs.ubc.ca/~murphyk/Software/Ocaml/why_ocaml.html

Blogs on OCaml from Jane Street, “where functional programming meets the real world”: http://ocaml.janestreet.com/

A very very good introduction to OCaml:

A C++/Java programmer’s introduction to Objective Caml

Different voices:

Some claim that OCaml sucks: http://sds.podval.org/ocaml-sucks.html

Similar Posts

  • |

    Synchronizing home directories

    Any good tools to synchronize home directories on Linux boxes? Many have several PC/laptops and consequently many home directories. There is home directory synchronizing problem. unison is a good tool to do this: http://www.cis.upenn.edu/~bcpierce/unison/download/releases/stable/unison-manual.html#rshmeth http://www.watzmann.net/blog/2009/02/my-homedirs-in-unison.html http://www.cis.upenn.edu/~bcpierce/papers/index.shtml#File%20Synchronization Useful script: $ unison -batch -ui text ./ /mnt/homebak/zma/ In text user interface, synchronizing two directories in batch mode…

  • How to flush a cached redirect by Chrome?

    Chrome caches redirects. How to flush a cached redirect by Chrome? Clearing the cache/cookies for the specific domain (sorry, it is the domain level in this solution) as in https://www.systutorials.com/qa/453/how-to-remove-cookies-for-a-certain-site-in-chrome will also flush the redirect caches for this domain. Read more: How to Redirect Old Domain to New Domain Using htaccess Redirect How to Flush…

  • How to view a file at a specific commit in git?

    How to view a file at a specific commit/revision in git? You can use git show to view a file’s content at a specific commit in git: https://www.systutorials.com/docs/linux/man/1-git-show/ $ git show REVISION:/path/to/file You can also save a copy by $ git show REVISION:/path/to/file >file.copy Read more: How to produce a patch file for a specific…

  • How to Passwordless SSH to an OpenWrt Router?

    The good ssh-copy-id method which works well on common Linux seems not working for OpenWrt router. How to Passwordless SSH to an OpenWrt Router? OpenWrt’s SSH server is Dropbear. It can accept normal RSA keys. But the authorized_keys location is not the same as the openssh “~/.ssh/authorized_keys”. The location for the authorized_keys is /etc/dropbear/authorized_keys What…

  • How to install gitbook?

    How to install gitbook on my own Linux box? First, install node.js following https://www.systutorials.com/qa/1268/how-to-install-node-js-on-fedora or How to install node.js on Ubuntu/Linux Mint depending on your distro. Second, install gitbook by npm to /opt/: # cd /opt/ # npm install gitbook Then, the gitbook can be invoked by /opt/node_modules/gitbook/bin/gitbook.js You may need to install the latest…

4 Comments

Leave a Reply

Your email address will not be published. Required fields are marked *