[Scilab-users] imprecise error messages
Samuel Gougeon
sgougeon at free.fr
Thu Feb 6 23:17:37 CET 2020
Le 06/02/2020 à 22:55, Federico Miyara a écrit :
>
> Dear All,
>
> I'm trying to use the error messages available at
> https://help.scilab.org/docs/6.0.2/en_US/error_table.html
>
> However, I cannot find one that describes precisely what is wrong.
>
> My argument is any scalar, vector, matrix or N-D array of real or
> complex numbers.
>
> If I use
>
> "%s: Argument #%d: Decimal or complex number expected.\n"
>
> it may convey the idea that only scalars are admissible. I think the
> word "number" jeopardizes the message. It would be better if the word
> "type" were clearly mentioned, for instance "Wrong input type: %d
> expected.\n"
Yes, but to me, "input" is useless, since only input types are testable.
In addition, the argument's number must appear. So yes, something like
"%s: Argument #%d: Decimal or complex type expected.\n"
would be better. A still more open message is possible and already listed:
"%s: Argument #%d: %s expected.\n"
>
> If I use
>
> "%s: Argument #%d: Hypermatrix expected.\n"
>
> it may be interpreted as if, for instance, a polynomial hypermatrix
> would be acceptable.
Yes, or of any other type, since this message only informs about the
size / format, not about the data type. It is is in the same messages
section "Checking container's dimension and sizes" than other messages
about the shape / array size.
>
> Testing abs() on a string yields
>
> --> abs("hello")
> in builtin abs
>
> Function not defined for given argument type(s),
> check arguments or define function %c_abs for overloading.
>
> This gives a hint where is the problem, but does not indicate what
> type is expected, which would be more useful.
But impossible. An error message is not aimed to replace the help page.
There may be many possibilities.
If in the function that you write you want to display the documented
list of available syntaxes for this function, just before the proper
error message, then disp_usage()
<http://sgougeon.free.fr/scilab/help/uman/scilab_en_US_help/disp_usage.html>
is made for you, available in the uman package:
https://atoms.scilab.org/toolboxes/uman
atomsInstall uman
Samuel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.scilab.org/pipermail/users/attachments/20200206/8e590c9a/attachment.htm>
More information about the users
mailing list