* Long Float Error from Gnat @ 1998-10-29 0:00 Al Christians 1998-10-30 0:00 ` Jerry van Dijk ` (2 more replies) 0 siblings, 3 replies; 15+ messages in thread From: Al Christians @ 1998-10-29 0:00 UTC (permalink / raw) I've hit an odd numerical error in a program that I've compiled with GNAT 3.10p1 on NT 4 sp3. I almost can't believe it, so I wonder if anyone else can tell me what's going on. My number one suspect is that it's a floating point problem in my Pentium Pro. Here's the code: ------------------------------------------------------------------- with Ada.Text_Io; with Ada.Long_Float_Text_Io; with Ada.Integer_Text_IO; procedure Num_Test is procedure Read_Num( S: String ) is Num: Long_Float; Last_Char_Pos: Positive; begin Ada.Long_Float_Text_Io.Get( S, Num, Last_Char_Pos ); Ada.Text_Io.Put( "Success: " & S & " = " ); Ada.Long_Float_Text_Io.Put( Num ); Ada.Text_Io.Put( " Last Char Pos: " & " = " ); Ada.Integer_Text_Io.Put( Last_Char_Pos ); Ada.Text_Io.New_Line; exception when others => Ada.Text_Io.Put( "Error: " & S ); Ada.Text_Io.New_Line; end; begin Read_Num( "1.0" ); Read_Num( "1.23456789" ); Read_Num( "1.2345678901234" ); Read_Num( "1.234567890E+1" ); Read_Num( "-1.234567890E+1" ); Read_Num( "1.234567890E+39" ); Read_Num( "-1.234567890E-39" ); Read_Num( "-1.000000000E-32" ); Read_Num( "1.000000000E-32" ); Read_Num( "-5.000000000E-32" ); Read_Num( "5.000000000E-32" ); Read_Num( "-5.0000000000E-32" ); Read_Num( "5.0000000000E-32" ); Read_Num( "-5.00000000E-32" ); Read_Num( "5.00000000E-32" ); Read_Num( "-50.00000000E-33" ); Read_Num( "50.00000000E-33" ); Read_Num( "-1.200000000E-32" ); Read_Num( "1.200000000E-32" ); Read_Num( "-1.270000000E-32" ); Read_Num( "1.270000000E-32" ); Read_Num( "-1.271110000E-32" ); Read_Num( "1.271110000E-32" ); Read_Num( "-1.271113762E-32" ); Read_Num( "1.271113762E-32" ); Read_Num( "1.271113763E-32" ); Read_Num( "-1.271113763E-32" ); Read_Num( "-1.271113764E-32" ); Read_Num( "1.271113764E-32" ); Read_Num( "1.271113763E-33" ); Read_Num( "-1.271113763E-33" ); Read_Num( "1.2711137638E-33" ); Read_Num( "-1.2711137638E-33" ); Read_Num( "1.271113763E-30" ); Read_Num( "-1.271113763E-30" ); Read_Num( "1.2E-32" ); Read_Num( "-1.2E-32" ); end Num_Test; -------------------------------End of Code ------------------------- Here's the output -------------------------------------------------------------------- Success: 1.0 = 1.00000000000000E+00 Last Char Pos: = 3 Success: 1.23456789 = 1.23456789000000E+00 Last Char Pos: = 10 Success: 1.2345678901234 = 1.23456789012340E+00 Last Char Pos: = 15 Success: 1.234567890E+1 = 1.23456789000000E+01 Last Char Pos: = 14 Success: -1.234567890E+1 = -1.23456789000000E+01 Last Char Pos: = 15 Success: 1.234567890E+39 = 1.23456789000000E+39 Last Char Pos: = 15 Success: -1.234567890E-39 = -1.23456789000000E-39 Last Char Pos: = 16 Success: -1.000000000E-32 = NaN****************** Last Char Pos: = 16 Success: 1.000000000E-32 = NaN****************** Last Char Pos: = 15 Success: -5.000000000E-32 = NaN****************** Last Char Pos: = 16 Success: 5.000000000E-32 = NaN****************** Last Char Pos: = 15 Success: -5.0000000000E-32 = -5.00000000000000E-32 Last Char Pos: = 17 Success: 5.0000000000E-32 = 5.00000000000000E-32 Last Char Pos: = 16 Success: -5.00000000E-32 = -5.00000000000000E-32 Last Char Pos: = 15 Success: 5.00000000E-32 = 5.00000000000000E-32 Last Char Pos: = 14 Success: -50.00000000E-33 = NaN****************** Last Char Pos: = 16 Success: 50.00000000E-33 = NaN****************** Last Char Pos: = 15 Success: -1.200000000E-32 = NaN****************** Last Char Pos: = 16 Success: 1.200000000E-32 = NaN****************** Last Char Pos: = 15 Success: -1.270000000E-32 = NaN****************** Last Char Pos: = 16 Success: 1.270000000E-32 = NaN****************** Last Char Pos: = 15 Success: -1.271110000E-32 = NaN****************** Last Char Pos: = 16 Success: 1.271110000E-32 = NaN****************** Last Char Pos: = 15 Success: -1.271113762E-32 = NaN****************** Last Char Pos: = 16 Success: 1.271113762E-32 = NaN****************** Last Char Pos: = 15 Success: 1.271113763E-32 = NaN****************** Last Char Pos: = 15 Success: -1.271113763E-32 = NaN****************** Last Char Pos: = 16 Success: -1.271113764E-32 = NaN****************** Last Char Pos: = 16 Success: 1.271113764E-32 = NaN****************** Last Char Pos: = 15 Success: 1.271113763E-33 = 1.27111376300000E-33 Last Char Pos: = 15 Success: -1.271113763E-33 = -1.27111376300000E-33 Last Char Pos: = 16 Success: 1.2711137638E-33 = 1.27111376380000E-33 Last Char Pos: = 16 Success: -1.2711137638E-33 = -1.27111376380000E-33 Last Char Pos: = 17 Success: 1.271113763E-30 = 1.27111376300000E-30 Last Char Pos: = 15 Success: -1.271113763E-30 = -1.27111376300000E-30 Last Char Pos: = 16 Success: 1.2E-32 = 1.20000000000000E-32 Last Char Pos: = 7 Success: -1.2E-32 = -1.20000000000000E-32 Last Char Pos: = 8 ------------------------------End of Output --------------------------- Question relates to the surprising incidence of NaN's in the output. These all look like properly formatted strings. It looks as if any number with exponent E-32 and exactly 10 digits -> NaN. How could this be? TIA for any help. Al ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Long Float Error from Gnat 1998-10-29 0:00 Long Float Error from Gnat Al Christians @ 1998-10-30 0:00 ` Jerry van Dijk 1998-10-30 0:00 ` jrcarter001 1998-10-30 0:00 ` Stephen Leake 2 siblings, 0 replies; 15+ messages in thread From: Jerry van Dijk @ 1998-10-30 0:00 UTC (permalink / raw) Al Christians (achrist@easystreet.com) wrote: : I've hit an odd numerical error in a program that I've compiled : with GNAT 3.10p1 on NT 4 sp3. I almost can't believe it, so I wonder : if anyone else can tell me what's going on. My number one suspect is : that it's a floating point problem in my Pentium Pro. I'm no expert on this, but there seems to be something strange here. I would have expected both procedures below to give identical results: with Ada.Text_IO; with Ada.Long_Float_Text_IO; procedure My_Test is package Long_Float_IO is new Ada.Text_IO.Float_IO (Long_Float); procedure Check_Gnat (N : in Long_Float; S : in String) is Result : Long_Float; Last : Positive; begin Ada.Text_IO.Put_Line (N'Img); Ada.Long_Float_Text_IO.Put (N); Ada.Text_IO.New_Line; Ada.Long_Float_Text_IO.Get (S, Result, Last); Ada.Text_IO.Put_Line ("Last is" & Last'Img); if Result = N then Ada.Text_IO.Put_Line ("String equals number"); else Ada.Text_IO.Put_Line ("String does not equal number"); end if; Ada.Text_IO.Put_Line (Result'Img); Ada.Long_Float_Text_IO.Put (Result); Ada.Text_IO.New_Line; Ada.Text_IO.New_Line; end Check_Gnat; procedure Check_My (N : in Long_Float; S : in String) is Result : Long_Float; Last : Positive; begin Ada.Text_IO.Put_Line (N'Img); Long_Float_IO.Put (N); Ada.Text_IO.New_Line; Long_Float_IO.Get (S, Result, Last); Ada.Text_IO.Put_Line ("Last is" & Last'Img); if Result = N then Ada.Text_IO.Put_Line ("String equals number"); else Ada.Text_IO.Put_Line ("String does not equal number"); end if; Ada.Text_IO.Put_Line (Result'Img); Long_Float_IO.Put (Result); Ada.Text_IO.New_Line; Ada.Text_IO.New_Line; end Check_My; begin Ada.Text_IO.Put_Line ("GNAT:"); Check_Gnat (1.000000000E-32, "1.000000000E-32"); Ada.Text_IO.Put_Line ("Mine:"); Check_My (1.000000000E-32, "1.000000000E-32"); end My_Test; -- -- Jerry van Dijk | email: jdijk@acm.org -- Leiden, Holland | member Team-Ada -- Ada & Win32: http://stad.dsl.nl/~jvandyk ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Long Float Error from Gnat 1998-10-29 0:00 Long Float Error from Gnat Al Christians 1998-10-30 0:00 ` Jerry van Dijk @ 1998-10-30 0:00 ` jrcarter001 1998-10-30 0:00 ` Al Christians 1998-10-30 0:00 ` Stephen Leake 2 siblings, 1 reply; 15+ messages in thread From: jrcarter001 @ 1998-10-30 0:00 UTC (permalink / raw) Scary. I get the same results with 3.10p1 on Win95; using -gnato doesn't change anything. Using 3.10 for DOS (same machine) gives a SIGFPE on the first one that gives a NaN with the Win compiler. 3.10p for Linux (Slackware)/Pentium gives +/-inf for the +/-50.0E-33 examples. Hopefully, Dewar will tell us this is fixed in 3.11p, coming soon to a computer near you. Jeff Carter -----------== Posted via Deja News, The Discussion Network ==---------- http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Long Float Error from Gnat 1998-10-30 0:00 ` jrcarter001 @ 1998-10-30 0:00 ` Al Christians 0 siblings, 0 replies; 15+ messages in thread From: Al Christians @ 1998-10-30 0:00 UTC (permalink / raw) I hit that error reading a file that was also created by a program compiled by GNAT. The file had nearly a million numbers in it, and about 20% had been read before any producing an error was found. In my case, the workaround was simple. I went back and changed the program that wrote the file, replacing 'aft => 9' with 'aft => 10'. This increased file size by about a million bytes, giving yet more precision than I probably will ever need. After this change everything ran with no problem, although I have no idea if using aft => 10 will prevent all such errors. I'll take a wild guess that this has something to do with 10 non-zero decimal digits (1 before and 9 after) being the most that one can ever fit into a 32-bit integer. How the exponent of -32 relates to this IDK. There was one posting on chat@gnat.com about a month ago reporting something similar with exponents around -33 or -34, but I didn't see find responses in the archive. Actually, I am pleased to know that this is not the Pentium Pro numeric bug. I was too busy and lazy back when that was in the papers to do anything about getting Intel to provide me updated processors. Thanks for letting me know that this is not a case of me being skewered by my own sloth. Al jrcarter001@my-dejanews.com wrote: > > Scary. I get the same results with 3.10p1 on Win95; using -gnato doesn't > change anything. > ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Long Float Error from Gnat 1998-10-29 0:00 Long Float Error from Gnat Al Christians 1998-10-30 0:00 ` Jerry van Dijk 1998-10-30 0:00 ` jrcarter001 @ 1998-10-30 0:00 ` Stephen Leake 1998-10-30 0:00 ` Al Christians 2 siblings, 1 reply; 15+ messages in thread From: Stephen Leake @ 1998-10-30 0:00 UTC (permalink / raw) Al Christians <achrist@easystreet.com> writes: > I've hit an odd numerical error in a program that I've compiled > with GNAT 3.10p1 on NT 4 sp3. I almost can't believe it, so I wonder > if anyone else can tell me what's going on. My number one suspect is > that it's a floating point problem in my Pentium Pro. > > Here's the code: <snip> running the same code with ObjectAda 7.1.2 NT 4 sp3 gives no NAN's. Must be a bug/feature in the GNAT runtime. Wait till 3.11p comes out, then submit a bug report :) -- Stephe ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Long Float Error from Gnat 1998-10-30 0:00 ` Stephen Leake @ 1998-10-30 0:00 ` Al Christians 1998-10-31 0:00 ` dewar 0 siblings, 1 reply; 15+ messages in thread From: Al Christians @ 1998-10-30 0:00 UTC (permalink / raw) The problem is a little stranger than previously presented. The program below will generate lots of errors with other values of aft than 9. The errors all seem to occur when the negative of the exponent plus the digits after the decimal equals 41. Wow! Al ------------------------------------------------------------------------------ with Ada.Text_Io; with Ada.Long_Float_Text_Io; with Ada.Numerics.Long_Elementary_Functions; with Ada.Numerics.Float_Random; procedure Numeric_Test is The_Generator: Ada.Numerics.Float_Random.Generator; function Generate_Random_Number return Long_Float is x: Long_Float; begin X := Long_Float( Ada.Numerics.Float_Random.Random( The_Generator ) ); X := X * 300.0 - 150.0; return Ada.Numerics.Long_Elementary_Functions.exp( X ); end; Number_Of_Tests: Natural := 1_000_000; X: Long_Float; Y: Long_Float; Count: Integer := 0; X_String, Y_String: String(1..30); Last_Pos: Natural; Largest: Long_Float := -99.99E+99; Smallest: Long_Float := +99.99E+99; begin for I in 1..Number_Of_Tests loop X := Generate_Random_Number; for Digits_Aft in 6..12 loop begin Ada.Long_Float_Text_Io.Put( X_String, X, Aft => Digits_Aft ); Ada.Long_Float_Text_Io.Get( X_String, Y, Last_Pos ); Ada.Long_Float_Text_Io.Put( Y_String, Y, Aft => Digits_Aft ); if X_String /= Y_String then Ada.Text_Io.Put( "Aft =>" & Integer'Image( Digits_Aft ) ); Ada.Text_Io.Put( Long_Float'Image(X) ); Ada.Text_Io.Put( " "); Ada.Text_Io.Put( Long_Float'Image(Y) ); Ada.Text_Io.New_Line; if x > Largest then Largest := X; end if; if x < Smallest then Smallest := X; end if; Count := Count + 1; end if; exception when others => Ada.Text_Io.Put( "Exception:" & Long_Float'Image(X) ); Ada.Text_Io.Put( " Aft:" & Integer'Image(Digits_Aft) ); end; end loop; end loop; Ada.Text_IO.Put_Line( "Largest: " & Long_Float'Image(Largest) ); Ada.Text_IO.Put_Line( "Smallest: " & Long_Float'Image(Smallest) ); Ada.Text_IO.Put_Line( "Count: " & Integer'Image(Count) ); end Numeric_Test; ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Long Float Error from Gnat 1998-10-30 0:00 ` Al Christians @ 1998-10-31 0:00 ` dewar 1998-10-31 0:00 ` Al Christians 0 siblings, 1 reply; 15+ messages in thread From: dewar @ 1998-10-31 0:00 UTC (permalink / raw) In article <363A49F3.DB0A0196@easystreet.com>, Al Christians <achrist@easystreet.com> wrote: > The problem is a little stranger than previously presented. The > program below will generate lots of errors with other values of > aft than 9. The errors all seem to occur when the negative of the > exponent plus the digits after the decimal equals 41. Wow! Remember that CLA may be an interesting place to discuss possible GNAT bugs but it is not the place to report them. If you think you have found a GNAT bug, always report it to report@gnat.com, if you want the ACT team to look at it, Thanks. Robert Dewar Ada Core Technologies -----------== Posted via Deja News, The Discussion Network ==---------- http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Long Float Error from Gnat 1998-10-31 0:00 ` dewar @ 1998-10-31 0:00 ` Al Christians 1998-11-01 0:00 ` dewarr 0 siblings, 1 reply; 15+ messages in thread From: Al Christians @ 1998-10-31 0:00 UTC (permalink / raw) dewar@gnat.com wrote: > > Remember that CLA may be an interesting place to discuss possible GNAT bugs > but it is not the place to report them. If you think you have found a GNAT > bug, always report it to report@gnat.com, if you want the ACT team to look > at it, Thanks. > Ok. I posted it here first, because I wasn't sure of the source of the anomaly (I've only run it on Pentium Pro's I know have the FP bug), and I figured I would get a richer set of responses than the person who posted something that looked about the same to GNAT chat about a month ago and got no responses that I could find in the archive. Before the other postings came back confirming it on other hardware, I also received by email a copy of what was evidently a bug report to ACT submitted by someone else for this same problem. It's got a bug number, ACT #273, attached, so I trust that I don't have to follow up directly by bug report on it now. Is that correct? BTW, the numbers that triggered the fault, approximately 1E-32 gave me some reason to question what was going on in my application. All my data is within a few orders of magnitude of unity, and I couldn't figure out any scenario by which anything I was dealing with in the program could possible come out non-zero but less than 1E-8. The roundoff error for Long_Float should not come out of a magnitude much less than 1E-16, since they are only good to about that many places. What was happening was that when a number was a summation of almost equal roundoff errors of different signs, the errors (of order 1E-16) would just about cancel, leaving a residual of order 1E-32. The program was not wrong, as the interpretation of the answers in no way distinguishes 1E-32 from zero, but it's curious that an artifact of an artifact (or a phantom of a ghost for Halloween) produced the data that exposed this bug. Al ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Long Float Error from Gnat 1998-10-31 0:00 ` Al Christians @ 1998-11-01 0:00 ` dewarr 1998-11-01 0:00 ` Al Christians 0 siblings, 1 reply; 15+ messages in thread From: dewarr @ 1998-11-01 0:00 UTC (permalink / raw) In article <363B6EBF.C67DA0DC@easystreet.com>, Al Christians <achrist@easystreet.com> wrote: > dewar@gnat.com wrote: > > > > Remember that CLA may be an interesting place to discuss possible GNAT bugs > > but it is not the place to report them. If you think you have found a GNAT > > bug, always report it to report@gnat.com, if you want the ACT team to look > > at it, Thanks. > > > > Ok. > > I posted it here first, because I wasn't sure of the source of the > anomaly (I've only run it on Pentium Pro's I know have the FP bug), > and I figured I would get a richer set of responses than the > person who posted something that looked about the same to GNAT chat > about a month ago and got no responses that I could find in the > archive. GNAT chat is also not the place to post bug reports. We never take bug reports from either CLA or from chat, only from explicit mail to report@gnat.com. Robert Dewar Ada Core Technologies -----------== Posted via Deja News, The Discussion Network ==---------- http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Long Float Error from Gnat 1998-11-01 0:00 ` dewarr @ 1998-11-01 0:00 ` Al Christians 1998-11-01 0:00 ` bob 1998-11-02 0:00 ` Long Float Error from Gnat dewar 0 siblings, 2 replies; 15+ messages in thread From: Al Christians @ 1998-11-01 0:00 UTC (permalink / raw) dewarr@my-dejanews.com wrote: > > GNAT chat is also not the place to post bug reports. We never take bug reports > from either CLA or from chat, only from explicit mail to report@gnat.com. Sure. I didn't expect that I was going to report a bug via GNAT chat. When I wrote my posting here, I had not concluded that I had even found a bug. I was only posting something curious and Ada-related that I did not understand. This newsgroup seemed to me the most likely place for me to learn more about what I was seeing. That worked. I have not written a bug report on this item -- one of the first responses I got was "wait until 3.11 comes out, then submit a bug report". Another was "it's fixed". Given that reply, I don't I will submit a bug report. Even not given that reply, I don't know if I would have submitted a bug report. As I remember reading it, probably second hand, so correct me if I'm wrong, ACT's customers pay not less than $600/month to be ACT's customers, and I pay nothing. I expect that at least some of them read this newsgroup and would see my posting. They obviously have some far more significant interest than me in having GNAT programs produce correct results. If they can live with a system with this flaw that only shows up for numbers of magnitude around 1E-30 and less, and if none of those customers with their CMM software processes have found this problem that I unearthed within about 1 month of starting to use GNAT day-to-day for real work in my 1-person operation, and if none of them would ask ACT to fix it, who am I to complain? Al ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Long Float Error from Gnat 1998-11-01 0:00 ` Al Christians @ 1998-11-01 0:00 ` bob 1998-11-02 0:00 ` Bargin GNAT support prices (Was Re: Long Float Error from Gnat) taashlo 1998-11-02 0:00 ` Long Float Error from Gnat dewar 1 sibling, 1 reply; 15+ messages in thread From: bob @ 1998-11-01 0:00 UTC (permalink / raw) Don't despair Al, I for one thank you for informing me/us of this. As one of those paying $750.00 per month, I welcome anything which helps my company and I out. TKS...bob Al Christians <achrist@easystreet.com> wrote in article <363C8EAA.57DBA71C@easystreet.com>... > dewarr@my-dejanews.com wrote: > > > > GNAT chat is also not the place to post bug reports. We never take bug reports > > from either CLA or from chat, only from explicit mail to report@gnat.com. > > Sure. I didn't expect that I was going to report a bug via GNAT chat. > When I wrote my posting here, I had not concluded that I had even found > a bug. I was only posting something curious and Ada-related that I > did not understand. This newsgroup seemed to me the most likely place > for me to learn more about what I was seeing. That worked. > > I have not written a bug report on this item -- one of the first > responses I got was "wait until 3.11 comes out, then submit a bug > report". Another was "it's fixed". Given that reply, I don't I will > submit a bug report. > > Even not given that reply, I don't know if I would have submitted > a bug report. As I remember reading it, probably second hand, so > correct me if I'm wrong, ACT's customers pay not less than $600/month > to be ACT's customers, and I pay nothing. I expect that at least some > of them read this newsgroup and would see my posting. They obviously > have some far more significant interest than me in having GNAT programs > produce correct results. If they can live with a system with this flaw > that only shows up for numbers of magnitude around 1E-30 and less, and > if none of those customers with their CMM software processes have found > this problem that I unearthed within about 1 month of starting to use > GNAT day-to-day for real work in my 1-person operation, and if none of > them would ask ACT to fix it, who am I to complain? > > > Al > ^ permalink raw reply [flat|nested] 15+ messages in thread
* Bargin GNAT support prices (Was Re: Long Float Error from Gnat) 1998-11-01 0:00 ` bob @ 1998-11-02 0:00 ` taashlo 1998-11-03 0:00 ` dewar 0 siblings, 1 reply; 15+ messages in thread From: taashlo @ 1998-11-02 0:00 UTC (permalink / raw) "bob" <bklungle@junque.com> writes: > Don't despair Al, > > I for one thank you for informing me/us of this. > > As one of those paying $750.00 per month, I welcome anything which helps my > company and I out. > > TKS...bob How did you get GNAT support for only $750.00/month? The price quoted to me by ACT was $48,000/year for the first year and $24,000/year for subsequent years. That's $4,000/month for the first year. There is no way that my one-programmer, 2-3 year project can justify ~$75,000 to ~$100,000 for GNAT support. I haven't heard a reply to my response to ACT's quote yet. But our MS Exchange server has been acting a little flaky , so I resent my response this morning. In my response I asked if there was any cheaper options. It sounds as if there just might. Tad Ashlock <taashlo@sandia.gov> Sandia National Laboratories Albuquerque, NM, USA ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Bargin GNAT support prices (Was Re: Long Float Error from Gnat) 1998-11-02 0:00 ` Bargin GNAT support prices (Was Re: Long Float Error from Gnat) taashlo @ 1998-11-03 0:00 ` dewar 0 siblings, 0 replies; 15+ messages in thread From: dewar @ 1998-11-03 0:00 UTC (permalink / raw) In article <u3e829kb5.fsf_-_@sandia.gov>, taashlo@sandia.gov wrote: > "bob" <bklungle@junque.com> writes: > > > Don't despair Al, > > > > I for one thank you for informing me/us of this. > > > > As one of those paying $750.00 per month, I welcome anything which helps my > > company and I out. > > > > TKS...bob > > How did you get GNAT support for only $750.00/month? The > price quoted to me by ACT was $48,000/year for the first > year and $24,000/year for subsequent years. That's > $4,000/month for the first year. There is no way that > my one-programmer, 2-3 year project can justify ~$75,000 > to ~$100,000 for GNAT support. There is not "one price fits all" for GNAT support. The prices you quote above sound like quotes for an embedded version of GNAT (probably VxWorks). Our experience is that embedded systems require much more specialized systems work, and support, and the prices reflect this. Robert Dewar Ada Core Technologies -----------== Posted via Deja News, The Discussion Network ==---------- http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Long Float Error from Gnat 1998-11-01 0:00 ` Al Christians 1998-11-01 0:00 ` bob @ 1998-11-02 0:00 ` dewar 1998-11-02 0:00 ` dennison 1 sibling, 1 reply; 15+ messages in thread From: dewar @ 1998-11-02 0:00 UTC (permalink / raw) In article <363C8EAA.57DBA71C@easystreet.com>, Al Christians <achrist@easystreet.com> wrote: > if none of those customers with their CMM software processes have found > this problem that I unearthed within about 1 month of starting to use > GNAT day-to-day for real work in my 1-person operation, and if none of > them would ask ACT to fix it, who am I to complain? As anyone in the compiler business will tell you, you can have thousands of users, and have them run all kinds of extremely complex code, and then some one comes along and does something amazingly simple, and you find a surprising bug involving something simple that never worked, and it is hard to believe that no one has noticed it. Actually this isn't unique to compilers, look at all the simple bugs that exist in Windows 95 for example, after literally thousands of beta testers had hammered it. So it's not a matter of complaining at all, but simply noting that you have found something strange, and you should not assume that all these "customers with their CM processes" will have found the bug! We have lots of bug reports from non-supported users, and some small but significant percentage turn out to be real bugs that no one else has noticed. Even if you are paying ACT nothing at all, we will look carefully at your report, and it is a bug, will fix it in a future release -- not such a bad deal for $0.00! We can't promise immediate response or an immediate fix, that guarateed response is reserved for our supported customers, but we do look at EVERY report submitted carefully, and if they represent bugs, will fix them. Note that it is always more likely that we will look sooner, and fix the problem sooner, if your report is simple and well documented (this is true for customers as well!) Robert Dewar Ada Core Technologies -----------== Posted via Deja News, The Discussion Network ==---------- http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: Long Float Error from Gnat 1998-11-02 0:00 ` Long Float Error from Gnat dewar @ 1998-11-02 0:00 ` dennison 0 siblings, 0 replies; 15+ messages in thread From: dennison @ 1998-11-02 0:00 UTC (permalink / raw) In article <71j815$uv9$1@nnrp1.dejanews.com>, dewar@gnat.com wrote: > As anyone in the compiler business will tell you, you can have thousands of > users, and have them run all kinds of extremely complex code, and then some > one comes along and does something amazingly simple, and you find a surprising > bug involving something simple that never worked, and it is hard to believe > that no one has noticed it. Actually this isn't unique to compilers, look at > all the simple bugs that exist in Windows 95 for example, after literally > thousands of beta testers had hammered it. This certainly jibes with my experience. I seem to find at least 3 compiler bugs within a week of starting to seriously use a new compiler. For the most part they will be situations where I'm doing something weird (or illegal). But I occasionally get some of the "there's no way this routine ever worked for anyone" variety. It can't be a reflection on any one company, because *everyone* seems to have the problem. For just this reason I find Gnat very valuable. When I get a seemingly odd result from vendor X, its really helpful to have a *second* compiler around to run the code through. Even if that's what is *supposed* to happen, Gnat may give me an error message I undersand better. -- T.E.D. -----------== Posted via Deja News, The Discussion Network ==---------- http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own ^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~1998-11-03 0:00 UTC | newest] Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 1998-10-29 0:00 Long Float Error from Gnat Al Christians 1998-10-30 0:00 ` Jerry van Dijk 1998-10-30 0:00 ` jrcarter001 1998-10-30 0:00 ` Al Christians 1998-10-30 0:00 ` Stephen Leake 1998-10-30 0:00 ` Al Christians 1998-10-31 0:00 ` dewar 1998-10-31 0:00 ` Al Christians 1998-11-01 0:00 ` dewarr 1998-11-01 0:00 ` Al Christians 1998-11-01 0:00 ` bob 1998-11-02 0:00 ` Bargin GNAT support prices (Was Re: Long Float Error from Gnat) taashlo 1998-11-03 0:00 ` dewar 1998-11-02 0:00 ` Long Float Error from Gnat dewar 1998-11-02 0:00 ` dennison
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox