UNPKG

tpmkms

Version:

Reusable libraries for Entodicton, a natural language to json converter

54 lines (50 loc) 1.25 kB
const { knowledgeModule, ensureTestFile, where, unflatten, flattens } = require('./runtime').theprogrammablemind const { defaultContextCheck } = require('./helpers') const tests = require('./evaluate.test.json') const pos = require('./pos') const gdefaults = require('./gdefaults') const config = { name: 'evaluate', operators: [ "([evaluate] (value))", { pattern: "([value1])", development: true }, ], bridges: [ { where: where(), id: 'value1', evaluator: ({context}) => { context.evalue = 'value1 after evaluation' }, development: true, }, { where: where(), id: 'evaluate', isA: ['verb'], bridge: "{ ...next(operator), postModifiers: ['value'], value: after[0] }", semantic: async ({context, e}) => { context.response = (await e(context.value)).evalue if (context.response) { context.isResponse = true } } } ], }; knowledgeModule({ config, includes: [pos, gdefaults], module, description: 'Explicit handling of evaluate', test: { name: './evaluate.test.json', contents: tests, include: { words: true, }, checks: { context: defaultContextCheck(), }, }, })