D29418: Strip trailing binary operators
David Hurka <[email protected]> Tue, 5 May 2020 17:37:02 +0000
| Newsgroups | gmane.comp.kde.devel.education |
|---|---|
| Message-ID | <dd424d2b4526e6b36684bcefb50189cc__23791.2124650151$1588700254$gmane$org@localhost.localdomain> |
davidhurka added a comment. In D29418#663911 <https://phabricator.kde.org/D29418#663911>, @cfeck wrote: > The problem is that the original author wanted input errors to be visible while typing. That makes sense. It actually works, so it works. > If you check the expression after hitting Enter, you can detect more errors. That also already works. When you do not match an `(` with a `)`, the expression is not accepted at Enter. Currently I understand it that some parser function inside KmPlot parses the expression to a token stream, which is then passed to Mathematica. The parser requires matching brackets, so it could also require right arguments for binary operators, couldn’t it? To me as a user it looks like the parser works in general, and it is fairly complex code, so I think we don’t need to replace it with a new parser. I don’t know the parser of LabPlot2. If it could be a drop-in replacement, hmm... It appears that binary expressions are matched in `heir0()` to `heir5()` functions. Their logical structure is too complicated to understand it quickly, but I think one of these doesn’t monitor which operator makes sense now. REPOSITORY R334 KmPlot REVISION DETAIL https://phabricator.kde.org/D29418 To: yurchor, cfeck, davidhurka Cc: kde-edu, narvaez, apol