Just to add my 2 cents to the whole discussion re: beginners and re: Windows:
BG: did sporadic programming all my life, but never in a serious way. Python scripting inside 3D animation apps, ActionScript in Flash, etc. Started with Pascal in high-school.
Trying to learn proper programming now, doing the HtDP book with Racket, some JavaScript and turned my attention to OCaml. I’m on Windows.
I think OCaml is a fantastic teaching language, but I agree with lots of comments above: all the high-end stuff being thrown at you from the start (switches, build systems) is not a welcoming experience.
I just want to start exploring the language and programming, using some of the great books available.
Yet the message I get is: this is for the seasoned pros, go away and come back when you grow up. Which I feel to be in stark contrast with the nature of the language itself.
And I have to say, OCaml on Windows is not currently useable.
My Windows install went perfect, I could try some examples etc.
Then I decided to try Bogue and… well, in my experience it’s basically impossible to install on Windows, with the stadard (Mingw) OCaml installation.
(my struggles are documented here: Native Windows support · Issue #9 · sanette/tsdl-ttf · GitHub and here: Install error on Windows · Issue #42 · sanette/bogue · GitHub )
This abruptly cut off my ideas of eventually trying raylib/raygui and even of persisting with OCaml, as it seems a minefield on Windows, outside of the default install.
A very harsh contrast to any other language I tried (Racket, Node.js, Python, FreePascal). All of which require you to download an installer and have a working environment in 5 mins max.