Features & Development

"lint" for problem templates

"lint" for problem templates

by Dick Lane -
Number of replies: 1
This is a partly-baked-idea for a summer project (e.g., Google supported).

For several programming languages, there is a tool which checks for syntactic correctness (not to be confused with semantic or algorithmic validity) --- the progenitor is "lint" for C programs, but Maple has "mint" and there are a variety of others [http://en.wikipedia.org/wiki/Lint_(software)].

Is PG plus MathObjects sufficiently developed to enable this type of tool to be developed AND be useful? I suspect NOT although I can identify several recent systematic blunders I've made which were hard to diagnose because error messages were obscure but a WwLint might have caught, e.g.,
(a) computing a new object (based on a previous object) while still in texStrings mode [msg often mentions a misplaced use of "\", OUCH]
(b) confusing a math model with a syntactic one (e.g., it appears that objects with units can not be used in arithmetic or functional computations --- Maple's units system works fine with that)
(c) incompatibilities among some objects and error checkers, e.g., FormulaUpToConstant seems to clash with Fraction mode [even with showLinearityHints => 0]
In reply to Dick Lane

Re: "lint" for problem templates

by Dick Lane -
additional features could include

(d) identify macro files which are loaded but unused

(e) check spelling inside BEGIN_TEXT/END_TEXT blocks (or BEGIN/END_HINT or BEGIN/END_SOLUTION) but skipping variable names, stuff in math mode, and \{ code \}