<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Reliability of &amp;quot;Use of Real Types&amp;quot; error checking in Libraries &amp; objects</title>
    <link>https://community.graphisoft.com/t5/Libraries-objects/Reliability-of-quot-Use-of-Real-Types-quot-error-checking/m-p/93398#M33874</link>
    <description>&lt;DIV class="actalk-migrated-content"&gt;&lt;T&gt;Hello,&lt;BR /&gt;
I have a library part that has a statement in the 3D script that reads&lt;BR /&gt;
If rad=0 then (do something).&lt;BR /&gt;
Rad is a length type parameter set in the parameter list.&lt;BR /&gt;
Shouldn't this type of statement trigger the &lt;BR /&gt;
"Use of Real Types may result in precision problems" error message ?&lt;BR /&gt;
It has in many other scripts where I have used "Check Script" in AC 9.&lt;BR /&gt;
&lt;BR /&gt;
What am I missing here ?&lt;BR /&gt;
If I haven't missed something in the logic then&lt;BR /&gt;
has anyone else noticed that sometimes the error checker misses&lt;BR /&gt;
some errors of this type that it should pick up ?&lt;BR /&gt;
&lt;BR /&gt;
Thank you,&lt;BR /&gt;
Peter Devlin&lt;/T&gt;&lt;/DIV&gt;</description>
    <pubDate>Thu, 08 Jun 2006 02:39:20 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>2006-06-08T02:39:20Z</dc:date>
    <item>
      <title>Reliability of "Use of Real Types" error checking</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/Reliability-of-quot-Use-of-Real-Types-quot-error-checking/m-p/93398#M33874</link>
      <description>&lt;DIV class="actalk-migrated-content"&gt;&lt;T&gt;Hello,&lt;BR /&gt;
I have a library part that has a statement in the 3D script that reads&lt;BR /&gt;
If rad=0 then (do something).&lt;BR /&gt;
Rad is a length type parameter set in the parameter list.&lt;BR /&gt;
Shouldn't this type of statement trigger the &lt;BR /&gt;
"Use of Real Types may result in precision problems" error message ?&lt;BR /&gt;
It has in many other scripts where I have used "Check Script" in AC 9.&lt;BR /&gt;
&lt;BR /&gt;
What am I missing here ?&lt;BR /&gt;
If I haven't missed something in the logic then&lt;BR /&gt;
has anyone else noticed that sometimes the error checker misses&lt;BR /&gt;
some errors of this type that it should pick up ?&lt;BR /&gt;
&lt;BR /&gt;
Thank you,&lt;BR /&gt;
Peter Devlin&lt;/T&gt;&lt;/DIV&gt;</description>
      <pubDate>Thu, 08 Jun 2006 02:39:20 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/Reliability-of-quot-Use-of-Real-Types-quot-error-checking/m-p/93398#M33874</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2006-06-08T02:39:20Z</dc:date>
    </item>
    <item>
      <title>Re: Reliability of "Use of Real Types" error check</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/Reliability-of-quot-Use-of-Real-Types-quot-error-checking/m-p/93399#M33875</link>
      <description>Try in front of the statement
&lt;PRE&gt;rad=rad+0.0002/2-0.0001&lt;/PRE&gt;

It could happen, that ArchiCAD ignores the setting in the parameter script as there is no clear declaration procedure of vartypes in GDL. As normal variables are integer if you use them first or assign integer values this could be for parameters too. They change to real just if you do floating point calculations/operations with them. An integer parameter defined in the list has a floating point part too as you can see in debugger mode.</description>
      <pubDate>Thu, 08 Jun 2006 06:32:45 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/Reliability-of-quot-Use-of-Real-Types-quot-error-checking/m-p/93399#M33875</guid>
      <dc:creator>Frank Beister</dc:creator>
      <dc:date>2006-06-08T06:32:45Z</dc:date>
    </item>
    <item>
      <title>Re: Reliability of "Use of Real Types" error check</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/Reliability-of-quot-Use-of-Real-Types-quot-error-checking/m-p/93400#M33876</link>
      <description>Hello Frank,&lt;BR /&gt;
Thanks for posting back.&lt;BR /&gt;
You say&lt;BR /&gt;
 "An integer parameter defined in the list has a floating point part too as you can see in debugger mode."&lt;BR /&gt;
&lt;BR /&gt;
You pointed this out to me once before and it was a big surprise to me.&lt;BR /&gt;
I thought that GS had changed this in AC 9 and this was the purpose&lt;BR /&gt;
of the "inner type" that they mentioned at one point.&lt;BR /&gt;
&lt;BR /&gt;
You seem to be saying that any parameter initially set to a whole number&lt;BR /&gt;
is treated as an integer unless it is made to participate in some&lt;BR /&gt;
calculation that involves floating point numbers. Very stange.&lt;BR /&gt;
&lt;BR /&gt;
I was wondering about this last night and did a search on the web&lt;BR /&gt;
with the key words "integer 0".&lt;BR /&gt;
I did not find much but what I was wondering was, is zero considered&lt;BR /&gt;
an integer or a floating point number in computer mathematics&lt;BR /&gt;
when you are using a language that does not require explicit typing.&lt;BR /&gt;
&lt;BR /&gt;
I am begging to suspect that all of my assumptions about&lt;BR /&gt;
data types in AC are illusions or perhaps delusions.&lt;BR /&gt;
&lt;BR /&gt;
Peter Devlin</description>
      <pubDate>Thu, 08 Jun 2006 15:47:58 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/Reliability-of-quot-Use-of-Real-Types-quot-error-checking/m-p/93400#M33876</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2006-06-08T15:47:58Z</dc:date>
    </item>
    <item>
      <title>Re: Reliability of "Use of Real Types" error check</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/Reliability-of-quot-Use-of-Real-Types-quot-error-checking/m-p/93401#M33877</link>
      <description>Hello Frank,&lt;BR /&gt;
Well guess what.&lt;BR /&gt;
I did a dumb experiment and managed to trigger the&lt;BR /&gt;
"use of real types" error.&lt;BR /&gt;
&lt;BR /&gt;
The parameter "rad" is set to 0" in the parameter list&lt;BR /&gt;
and the IF statement reads  IF rad=0 then....&lt;BR /&gt;
If I change this to read  IF rad=0'-0" then.....&lt;BR /&gt;
I get the error message.&lt;BR /&gt;
&lt;BR /&gt;
I tried changing the working units to decimal feet&lt;BR /&gt;
and left the IF statement reading IF rad=0 then....&lt;BR /&gt;
and got no error until I change the IF statement&lt;BR /&gt;
to IF rad=0.0' then....&lt;BR /&gt;
&lt;BR /&gt;
I don't know what to make of this.&lt;BR /&gt;
Peter Devlin</description>
      <pubDate>Thu, 08 Jun 2006 16:55:19 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/Reliability-of-quot-Use-of-Real-Types-quot-error-checking/m-p/93401#M33877</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2006-06-08T16:55:19Z</dc:date>
    </item>
    <item>
      <title>Re: Reliability of "Use of Real Types" error check</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/Reliability-of-quot-Use-of-Real-Types-quot-error-checking/m-p/93402#M33878</link>
      <description>I wouldn't ascribe this too much meaning. &lt;IMG src="https://community.graphisoft.com/legacyfs/online/emojis/icon_smile.gif" style="display : inline;" /&gt;&lt;BR /&gt;
&lt;BR /&gt;
The GDL develop environment - the edit window - tries to precompile as much code as possible if you check the script or save the object. It tries to "understand" what you want to do. The compiler runs the script once (?) to see, if it is OK. Doing this it sets some warnings, if there might be problems. As doing no closing of CUT-commands with CUTEND. And if you use assumed floating point type in a comparation you get the precision warning. This does not mean there is a real (nice double meaning) problem.&lt;BR /&gt;
&lt;BR /&gt;
You understood the new internal integer functionality right. But this does not mean GDL does store the value in a "n" bit wide byte without floating part. The compiler remarks just that this variable can not have a floating part as long as you do no floating point result generating operations. As you mention with your 0'-0'': It does not need to generate a real type, just the operation _might_ can generate. Obvisiously is a length unit parameter from type integer too. But I haven't checked this yet.&lt;BR /&gt;
&lt;BR /&gt;
BTW: Is it a problem, that you do not have to click away the anoying warning? &lt;E&gt;&lt;span class="lia-unicode-emoji" title=":winking_face:"&gt;😉&lt;/span&gt;&lt;/E&gt;</description>
      <pubDate>Thu, 08 Jun 2006 20:11:33 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/Reliability-of-quot-Use-of-Real-Types-quot-error-checking/m-p/93402#M33878</guid>
      <dc:creator>Frank Beister</dc:creator>
      <dc:date>2006-06-08T20:11:33Z</dc:date>
    </item>
    <item>
      <title>Re: Reliability of "Use of Real Types" error check</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/Reliability-of-quot-Use-of-Real-Types-quot-error-checking/m-p/93403#M33879</link>
      <description>Hello Frank,&lt;BR /&gt;
You have given me some things to think about.&lt;BR /&gt;
I ran the debugger in AC 9 and all numeric variables&lt;BR /&gt;
are still shown as floating-point. I guess the debugger&lt;BR /&gt;
hasn't heard of the new "inner type".&lt;BR /&gt;
&lt;BR /&gt;
I still have only the demo version of AC 9 but I was using it&lt;BR /&gt;
to check my scripts so that I could update them to be correct&lt;BR /&gt;
in AC 10. I did not want to have any "precision problems"&lt;BR /&gt;
because our office uses my library parts almost exclusively&lt;BR /&gt;
and the man I work for would freak if he got an error message&lt;BR /&gt;
while trying to place one of my objects.&lt;BR /&gt;
Come to think of it, I am wondering if you get "use of real types"&lt;BR /&gt;
error messages  if you place an object containing these types of errors &lt;BR /&gt;
or does it only give such a report when you "check script".&lt;BR /&gt;
I will have to test this in AC 9.&lt;BR /&gt;
&lt;BR /&gt;
Thanks for the information Frank,&lt;BR /&gt;
Peter Devlin</description>
      <pubDate>Thu, 08 Jun 2006 20:33:42 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/Reliability-of-quot-Use-of-Real-Types-quot-error-checking/m-p/93403#M33879</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2006-06-08T20:33:42Z</dc:date>
    </item>
    <item>
      <title>Re: Reliability of "Use of Real Types" error check</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/Reliability-of-quot-Use-of-Real-Types-quot-error-checking/m-p/93404#M33880</link>
      <description>As the warning for not enough CUTENDS the precision warning is just a warning by checking the script. But as the inner sense of warnings: They can give a hint of upcoming errors. Most no error messages, but misbehaviour. In the case you think you compare 1=1 and GDL might compare 0.9999=1.0001. So you should avoid it.</description>
      <pubDate>Thu, 08 Jun 2006 20:50:31 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/Reliability-of-quot-Use-of-Real-Types-quot-error-checking/m-p/93404#M33880</guid>
      <dc:creator>Frank Beister</dc:creator>
      <dc:date>2006-06-08T20:50:31Z</dc:date>
    </item>
  </channel>
</rss>

