<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<br>
Stéphane,<br>
<br>
<blockquote type="cite"
cite="mid:a76134d8-080a-da95-c293-a936a134ab43@utc.fr">
<div class="moz-text-html" lang="x-unicode">
<blockquote type="cite"
cite="mid:b218970e-fe8c-995f-70ab-c83356b83b38@fceia.unr.edu.ar"><tt>I
think, from the user's perspective, that the type names
appearing in the variable browser (in the Type column)
should be strictly the same as reported by the function
typeof. Otherwise it can and will cause confusion and the
sensation of lack of consistency.<br>
</tt></blockquote>
<tt>So do I. But other users do not agree with that, that's why
I am trying to find a sensible compromise...</tt><tt><br>
</tt></div>
</blockquote>
<br>
Users who don't think that each thing should bear a single name
should provide a good rationale.<br>
<br>
The rationale for my proposal is that most users are not computer
science experts and can be easily confused by the reach of the word
"type". If the variable browser gives a contradictory message, such
as calling "double" what typeof calls "constant", they will probably
be at a loss. <br>
<br>
<blockquote type="cite"
cite="mid:a76134d8-080a-da95-c293-a936a134ab43@utc.fr">
<div class="moz-text-html" lang="x-unicode">
<blockquote type="cite"
cite="mid:b218970e-fe8c-995f-70ab-c83356b83b38@fceia.unr.edu.ar"><tt>Finally,
I don't consider it recommendable that the same word be used
both for a <i>format </i>and a <i>type name</i>, such as
if "constant" were replaced by "double". <br>
</tt></blockquote>
<tt>What do you mean by "format" ?</tt></div>
</blockquote>
<br>
I mean the way basic data are stored, such as the IEEE Std 754
specification, so double (double precision) is a format with 1 sign
bit, 11 binary exponent bits and 52 fraction bits.<br>
<br>
Type involves other information appart from the data themselves,
contained in a heaader. According to <br>
<br>
<a class="moz-txt-link-freetext" href="https://wiki.scilab.org/Memory%20representation%20of%20variables">https://wiki.scilab.org/Memory%20representation%20of%20variables</a><br>
<br>
"constant" requires a numeric type integer, two integers
representing rows and columns, an integer representing whether it is
real or complex, and finally the data in double precision format. <br>
<br>
<blockquote type="cite"
cite="mid:a76134d8-080a-da95-c293-a936a134ab43@utc.fr">
<div class="moz-text-html" lang="x-unicode">
<blockquote type="cite"
cite="mid:b218970e-fe8c-995f-70ab-c83356b83b38@fceia.unr.edu.ar"><tt>I
tend to think the answer is no, since they have very
different storage representations, cover different sets of
numbers and even operations behave differently. If so, the
type should be called integer8, integer16 and so on (so the
type would be integer8 and the basic format would be int16
--no ambiguity). If, on the contrary, they are the same,
then the only type name should be "integer" and the basic
format should be informed in a different column.<br>
<br>
</tt></blockquote>
<p><tt>That was my attempt, by using parenthesis.</tt></p>
</div>
</blockquote>
<br>
This could be prevented if it were acknowledged that int16 and
1nt32, for instance, are actually different types as they have
different memory representations, they represent different number
sets, and operators on them have different reults:<br>
<br>
--> int16(32000)*2<br>
ans =<br>
<br>
-1536<br>
--> int32(32000)*2<br>
ans =<br>
<br>
64000<br>
<br>
typeof acknowledges it, but type doesn't, yielding 8 for both types.<br>
<br>
Regards,<br>
<br>
Federico Miyara<br>
<br>
<br>
</body>
</html>