let disp_help () = pl "m.E.M.E - Minimalist Evaluator for Mathematical Expressions\n\nusage: calc [options] [mode]\n\n  modes:\n    +command-line (c) sequentially evaluate command-line arguments\n    +stdin        (s) evaluate expressions from standard input\n    +replace      (r) search and replace expressions inside a line (on stdin)\n\n  options:  (modes c and s)\n    --print-xp     (pxp) reprint the unevaluated expression\n    --print-newline (pn) goto newline before printing the result\n    --print-unit    (pu) print units, ie. stand-alone assignments\n    --print-symbol  (ps) print a symbol before the result\n\n  options (mode s)\n    --display-welcome (dw) \n      Display the welcome message at beginning of session\n\n  options (modes s and r)\n    --eval-now (en) xp1...xpN\n      Evaluate a list of command-line expressions before processing stdin.\n    \n  options (mode r)\n    --delimiters (del) <left del> <right del>\n      Set the delimiters for mathematical expressions.\n\n  options  (all modes)\n    --eval-file    (ef) <str>\n      Silently parse a file. Useful to define a bunch of variables.\n    --unit-string  (us) <str>\n      Set the string representing a unit (pure side-effect evaluation)\n    --print-errors (pe)\n      The parser prints debug error messages on stderr\n    --show-error   (se)\n      The parser prints a line with ^^^ where the error is\n    --help\n      Print this help page.\n"