Hi everybody
It's been mentioned before that the OCaml compiler's documentation is somewhat lacking. I've been going over the compiler code gradually (both the frontend and the backend) and while some parts are understandable enough, others are missing some basic explanations. Some explanations are also spread out throughout the codebase, making it hard to know what something means unless you've read another part of the codebase that relates to it.
Since the call to submit documentation commits has gone mostly unanswered, I'd like to suggest a method of making both my own progress through the code easier and hopefully making it easier for others who will follow.
What I'm going to do is, focusing on more or less one file at a time, I'll post newbie questions to the list about the code. Once I'm satisfied that I have a good enough understanding, I'll add comments to the aforementioned files and submit pull requests for them. I also encourage others to do the same.
What I need from the list, and especially from the more knowledgeable members (who already know the compiler code) is the willingness to explain the concepts and answer my questions, annoying as they may be. I have a pretty decent background in compilers, ASTs, code generation, etc, but not so much in type inference.
I'm not suggesting a particular timeframe for this process -- I'm doing this on the side while working on a research project and TAing, but I really would like to get to the point where I can make significant contributions to the toolchain, and if I can help others who follow in my footsteps, then that's a nice bonus.