compute-engine icon indicating copy to clipboard operation
compute-engine copied to clipboard

Parser doesn't insert `Missing` where expected

Open bengolds opened this issue 3 years ago • 1 comments

I've run into two more cases where I'd expect the parser to give an error by inserting Missing, akin to #28:

\\frac{x}{}=y parses as [ 'Multiply', [ 'Divide', 'x', '=' ], 'y' ]

\\sqrt{}=y parses as [ 'Multiply', [ 'Sqrt', '=' ], 'y' ]

Note that in both cases, if you have \placeholder inside of the empty brackets, it parses correctly:

\\frac{x}{\\placeholder}=y  parses as [ 'Equal', [ 'Divide', 'x', 'Missing' ], 'y' ]

\\sqrt{\\placeholder}=y parses as [ 'Equal', [ 'Sqrt', 'Missing' ], 'y' ]

bengolds avatar Feb 15 '22 03:02 bengolds

Confirmed still an issue in 0.4.3

> c.parse("\\frac{x}{}=y").json
[ 'Multiply', [ 'Divide', 'x', '=' ], 'y' ]

> c.parse("\\sqrt{}=y").json
[ 'Multiply', [ 'Sqrt', '=' ], 'y' ]

> c.parse("\\frac{x}{\\placeholder}=y").json
[ 'Equal', [ 'Divide', 'x', 'Missing' ], 'y' ]

> c.parse("\\sqrt{\\placeholder}=y").json
[ 'Equal', [ 'Sqrt', 'Missing' ], 'y' ]

strickinato avatar Mar 24 '22 21:03 strickinato