# Best OCaml Book

**URL:** <https://discuss.ocaml.org/t/best-ocaml-book/9033>\
**Category:** Learning\
**Tags:** book\
**Created:** [December 18, 2021, 2:36pm UTC](https://discuss.ocaml.org/t/best-ocaml-book/9033 "2021-12-18T14:36:27Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![crabs-can-code](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.ocaml.org/crabs-can-code/32/3419_2.png) [@crabs-can-code](https://discuss.ocaml.org/u/crabs-can-code)\
**Post date:** [December 18, 2021, 2:36pm UTC](https://discuss.ocaml.org/t/best-ocaml-book/9033/1 "2021-12-18T14:36:27Z")

</div>

Hello, I am completely new to OCaml, and I like learning programming languages from books. Are there any good books on OCaml that you could suggest?

OCaml is not my first language. I have some experience in functional programming languages like F# and Rust. Thank you.

---

<div class="post-metadata">

**Author:** ![nojb](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.ocaml.org/nojb/32/519_2.png) [@nojb](https://discuss.ocaml.org/u/nojb)\
**Post date:** [December 18, 2021, 3:09pm UTC](https://discuss.ocaml.org/t/best-ocaml-book/9033/2 "2021-12-18T15:09:56Z")

</div>

Hello, see [How do you stay productive in OCaml? - #5 by nojb](https://discuss.ocaml.org/t/how-do-you-stay-productive-in-ocaml/8221/5) for a list containing what I think are some good books (for various levels of experience).

Cheers,  
Nicolas

---

<div class="post-metadata">

**Author:** ![crabs-can-code](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.ocaml.org/crabs-can-code/32/3419_2.png) [@crabs-can-code](https://discuss.ocaml.org/u/crabs-can-code)\
**Post date:** [December 18, 2021, 3:55pm UTC](https://discuss.ocaml.org/t/best-ocaml-book/9033/3 "2021-12-18T15:55:21Z")

</div>

I was considering [https://dev.realworldocaml.org/](https://dev.realworldocaml.org/), but does it give enough information? It’s pretty short.

---

<div class="post-metadata">

**Author:** ![mseri](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.ocaml.org/mseri/32/91_2.png) [@mseri](https://discuss.ocaml.org/u/mseri)\
**Post date:** [December 20, 2021, 9:21am UTC](https://discuss.ocaml.org/t/best-ocaml-book/9033/4 "2021-12-20T09:21:08Z")

</div>

I fully agree with @nojb and @crabs-can-code recommendations, but I think there are other two resources that are worth mentioning.

To learn the language itself, I find both [John Whitington’s books](http://ocaml-book.com/) quite good but maybe a bit slow paced if you have already some experience.

If you don’t mind studying it while studying algorithms and data structures the [CS3110 course book “OCaml Programming: Correct + Efficient + Beautiful”](https://cs3110.github.io/textbook/cover.html) is fantastic, and since 2021 also includes videos.
