Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
Setting for disabling lazy evaluation of multiplication #18
Is this a request for a feature or a bug report?
What is the current behavior?
The "lazy evaluation of multiplication" may cause inconsistent or unexpected results (apart from the documented f(x) case), and there is no way to disable it.
1E-2 evaluates to -2+E
1e-2 evaluates to -2+e
1.0E-2 evaluates to 0.01
0x1 is evaluated as 1 (hex 1)
Having the option to require the explicit "*", and throwing an error when it's not present would produce consistent and less typing-error-prone results.
What is the expected or desired behavior?
Having a setting, like for relaxedSyntax, for explicitMultiplication, turning off the "lazy evaluation of multiplication"
Please provide use cases for changing the current behavior:
When feeding user input to Symja, most (if not all) calculator users expect the scientific notation, 1e-10 for example, to work as expected (yes, it is possible to "sanitize" the input too, but disabling the feature in Symja would be ideal)
Please describe your development environment (OS, browser, etc.):
Linux, Android Studio 3.0.1
Symja is awesome, Thanks!
Please verify, if a JUnit testcase could like the snippet below.
That would be perfect!
Please note that neither EXPLICIT_TIMES_OPERATOR = true nor false produces the same results as the current behavior albeit being consistent, so that may break backwards compatibility with apps relying or working around the current situation.