odoc_escape s escapes odoc special characters, and returns the escaped string and the number of double quotes in the string s.
balance_double_quotes s ensures there are an even number of double quote characters.
Regular expression for a Markdown "link description", as in "[link description](link target)".
* Link descriptions can span multiple lines. * For sane parsing, link descriptions may not contain square brackets, nor may they contain backslashes
markdown_to_odoc md translates the Markdown string md into odoc specioal comment syntax.
Does:
- Escaping
- Balancing double-quotes
- Converting Markdown links to odoc links
include DkCoder_Std.SCRIPT
__init context is the entry point for running a script module. The DkCoder compiler will inject this function at the top and bottom of the script module. The top __init does nothing, while the bottom __init calls the prior __init.
That means:
- calling the
__initfunction guarantees that the script module is initialized; that is, all of the script module's side-effects (ex.let () = Format.printf "Hello world@.") are executed before the__initreturns to the caller. - you can override the
__initfunction by simply defining the__initidempotently. That will shadow the top__initand when the bottom__initis executed your__initwill be called instead of the do-nothing top__init.
Future versions of DkCoder will call __init in dependency order for all `You script modules. Your __init function may be called several times.
__repl context is the entry point for debugging a script module in a REPL. The DkCoder compiler will inject this function at the top and bottom of the script module. The top __repl does nothing, while the bottom __repl calls the prior __repl.
That means:
- you can override the
__replfunction by simply defining the__replidempotently. That will shadow the top__repland when the bottom__replis executed your__replwill be called instead of the do-nothing top__repl.
The run-time module information for the script module.

