function getMath () {
  const { create, all } = require('../lib/browser/math.js')

  const math = create(all)
  const parse = math.parse
  const evaluate = math.evaluate

  // See https://mathjs.org/docs/expressions/security.html#less-vulnerable-expression-parser
  math.import({
    'import':     function () { throw new Error('Function import is disabled') },
    'createUnit': function () { throw new Error('Function createUnit is disabled') },
    'reviver':    function () { throw new Error('Function reviver is disabled') }
  }, { override: true })

  return { math, parse, evaluate }
}
"Lazy" load math.js: only require when we actually start using it.
This ensures the cli application looks like it loads instantly.
When requesting help or version number, math.js isn't even loaded.
@return {{ evalute: function, parse: function, math: Object }}