<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">El 03/07/2018 a las 01:26, Jim Lee
escribió:<br>
</div>
<blockquote type="cite"
cite="mid:88a472c9-d729-7ec9-8362-6b78a145986d@gmail.com">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<p><br>
</p>
<br>
<div class="moz-cite-prefix">On 07/02/18 15:13, Wolf wrote:<br>
</div>
<blockquote type="cite"
cite="mid:7209b3ba-27e6-958f-b2be-a62c9e0d7771@gmail.com">
<meta http-equiv="Content-Type" content="text/html;
charset=utf-8">
<p>Not so long ago, Florian was proudly bragging about "Pascal
does not allow you to <a moz-do-not-send="true"
href="http://www.toodarkpark.org/computers/humor/shoot-self-in-foot.html">shoot
yourself in the foot</a>"</p>
<p>What about this little program:</p>
<p>program Project1;<br>
<br>
var a,b: byte;<br>
begin<br>
a:=1;<br>
b:=a*(-1);<br>
writeln(b); // result: 255<br>
end.<br>
<br>
</p>
<p>The result is obviously correct, given how the variables are
declared. But there are no compiler warnings / errors that the
assignment b:=a*(-1) is fishy, to put it mildly. And if you
are serious about strong typing, it ought to be illegal, with
a suitable complaint from the compiler.</p>
<p>Who is shooting whom in the foot?</p>
<p>Wolf<br>
</p>
<br>
<br>
</blockquote>
<br>
Should the compiler balk at this as well?<br>
<br>
program Project1;<br>
<br>
var a,b,c: byte;<br>
begin<br>
a:=5;<br>
b:=6;<br>
c:=a-b;<br>
writeln(c); // result: 255<br>
end.<br>
<br>
Without the implicit conversion of signed/unsigned values, the
utility of the language is greatly diminished.<br>
</blockquote>
<br>
Let's be honest, compared to C and many other languages (included
C++, that is a suicide without extra-language analyzer tools),
Pascal is very type secure. For instance, many languages allow
assigning a float to an integer without any problem. Moreover
without being clearly specified by language definition what the
compiler should do, truncate or round.<br>
<br>
Pascal needs to break backward compatibility to advance, that is, in
fact, a new language. But if pascal is struggling to survive, let
alone a new language if you are not mozilla, google...<br>
<br>
<blockquote type="cite"
cite="mid:88a472c9-d729-7ec9-8362-6b78a145986d@gmail.com"> <br>
-Jim<br>
<br>
<!--'"--><br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
fpc-pascal maillist - <a class="moz-txt-link-abbreviated" href="mailto:fpc-pascal@lists.freepascal.org">fpc-pascal@lists.freepascal.org</a>
<a class="moz-txt-link-freetext" href="http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal">http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal</a></pre>
</blockquote>
<p><br>
</p>
<pre class="moz-signature" cols="72">--
Saludos
Santiago A.
</pre>
</body>
</html>