A common problem with computer programming books is that no matter how well they are put together, they are subject to the tools and libraries changing in incompatible ways. The end result is a lot of time goes to waste resolving inconsistencies between the book examples and the updated libraries.
For example, it took me a good 1+ hours to figure out that List.Assoc.add now has an additional parameter (equal). I love OCaml's type system, but in this case it lead me on a wild goose chase.
Have you ever considered having branches in this repo with fixed examples? I don't expect any particular person to keep the examples up to date. But I think that with the branches in place contributors can submit fixes as they encounter them. Keeping the book alive a little bit longer :)
A common problem with computer programming books is that no matter how well they are put together, they are subject to the tools and libraries changing in incompatible ways. The end result is a lot of time goes to waste resolving inconsistencies between the book examples and the updated libraries.
For example, it took me a good 1+ hours to figure out that
List.Assoc.add
now has an additional parameter (equal). I love OCaml's type system, but in this case it lead me on a wild goose chase.Have you ever considered having branches in this repo with fixed examples? I don't expect any particular person to keep the examples up to date. But I think that with the branches in place contributors can submit fixes as they encounter them. Keeping the book alive a little bit longer :)