brewing:
Why don't you before hand just write out a general document? Not going into "x should be incremented by y divided by z squared" mode, but simply, "This class manages the systems memory, and calls subsystems to actually allocate and unallocate memory". I usually do something like this, so I'm sure of the function of the class, but not sure how to do it. This allows you to maintain the same function, while allowing you to make it work easily.
gravaera:
Wow, that is a lot of notes. Do you find that you use it frequently?
neon:
I meant not of the actual code being documented, merely the main concept. Do you have any "Overview" documentation, that gives you a general overview of what your OS does?
VolTeK:
That is a very good idea. I think I'll use that in addition to a full overview design document.
GAT:
I sort-of do that in my mind, instead of on paper. And I'm going to have to disagree with you. IMHO documentation is important for staying true to your goals.
NickJohnson:
Header files as a contract? That actually seems like a good idea.
bluemoon:
I see, do experiments on the idea to make sure it is worthwhile before writing any code, and make sure you develop the idea in the design document.
EDIT:
Do you think my design document is good so far (it's incomplete):
Design document (In Google Docs)