A new kind of knowledge-base for OCaml's doc

Hello,

I have been following @sabine’s post, Looking for Maintainers / Moderators for the OCaml Cookbook.

I really want to contribute but like any engineer, I am pressured on deadlines, which incentivizes me to ask here or in Discord. There are even wonderful books like Type Theory and Formal Proof, but I cannot allocate good time to read them.

That motivated me to think of a new mechanism, where documentations and question-answers are bridged, through Snippet project.

Someone asks a question like this. Instead of answering the question, you must contribute a self-contained paragraph, called “snippet”, then cite it in the question. For example the question cites:

If some snippet gets a high number of citations, then that would be a signal to contribute it to OCaml’s documentations or OCamlverse. In other words, OCaml’s cookbooks will be naturally contributed as more people’s questions get answered, and will be naturally certified as more people cite it!

The project is built on Dream, open-source, and CC 4.0 licensed. I’d be happy to see OCaml’s maintainers self-host an instance of it in OCaml’s official website. We could even design a voting mechanism to elect snippets for the official documentation.

For now, I am happy to listen to your feedback.

1 Like

Awesome project! We could add some metadata to each Snippet, like requiring 2–5 keywords — for example: Functor, Module, ADT, GADT, Performance — and also tag the OCaml version that the functionality described in the Snippet applies to

Thank you for the kind words. I encourage everyone else to post her feedback even if it is negative.

Good idea! I’ll add it to my backlog.

What do you think if all snippets are based on specified foundational resources? For example, snippets may cite each other, until a page from Software Foundations Series is reached.

In this way, any contribution to OCaml’s cookbooks will be well-disciplined on a great resource. Readers will be able to navigate related ideas surrounding a recipe or OCaml doc page.

1 Like