I wonder how the validation for STACK input fields can provide reasonable information if the students use . instead of * (or implicit multiplication).
I had a case where a student got stuck with the input
Validation looks fine but the prt refuses this as incompatible unit.
From maxima side, the dot is a legal multiplication operator for matrices (non-commutative multiply). The tex display unfortunately is identical to that of commutative multiply. Perhaps, the built in unit check might check for this issue if incompatibility is detected?
These ideas come to my mind:
- add . to the forbidden words. Works in the given case but isn't a general option, because this would have to be done for any input field with multiplication in the possible response.
- use some special markup for . in the validation. Actually, currently we can have this, if multiplication sign is switched from dot to cross or blank. It seems that this doesn't extend to .
- add e hint: "Note, you are using matrix multiplication. If that is not your intent, use * instead of ." along with the incompatibility message.
This is the first time I encounter this problem but I can understand the frustration of the student. I add this to the validation problem list in https://github.com/mkraska/meclib/wiki/Feedback-Overview