/** * @typedef {Command[]} Script * @typedef {Word[]} Command * @typedef {object} Word * @property {string} text */ /** * Parse out a Notcl script into an easier-to-interpret representation. * No script is actually executed yet. * * @param {string} code * @returns Script */ function parseNotcl(code) { /* Preprocess */ // fold line endings code = code.replace(/(?