comp.lang.ada
 help / color / mirror / Atom feed
* I am leaving Ada :-( because of GNAT bugs
@ 2017-12-07  7:45 Victor Porton
  2017-12-07  9:54 ` Simon Wright
                   ` (2 more replies)
  0 siblings, 3 replies; 26+ messages in thread
From: Victor Porton @ 2017-12-07  7:45 UTC (permalink / raw)


Yet one mysterious bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83310

I am leaving Ada and try to learn Rust or D, or maybe even code in C# 
instead.

I cannot tolerate GNAT bugs anymore.

For the last bug I simply don't know what is a workaround.

-- 
Victor Porton - http://portonvictor.org


^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: I am leaving Ada :-( because of GNAT bugs
  2017-12-07  7:45 I am leaving Ada :-( because of GNAT bugs Victor Porton
@ 2017-12-07  9:54 ` Simon Wright
  2017-12-09  8:53 ` bj.mooremr
  2017-12-12 22:57 ` Mehdi Saada
  2 siblings, 0 replies; 26+ messages in thread
From: Simon Wright @ 2017-12-07  9:54 UTC (permalink / raw)


Victor Porton <porton@narod.ru> writes:

> Yet one mysterious bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83310
>
> I am leaving Ada and try to learn Rust or D, or maybe even code in C# 
> instead.
>
> I cannot tolerate GNAT bugs anymore.
>
> For the last bug I simply don't know what is a workaround.

And no one else is going to try to find out, because your attachments to
that bug report aren't complete (you've left out the libraries
"components" and "librdf" that are required by your GPR).

You'd be more likely to get a response if you read and took to heart the
advice in StackOverflow's "How to create a Minimal, Complete, and
Verifiable example" at <https://stackoverflow.com/help/mcve>.

Here, compiling your problem source with GCC 7.1.0 gives

$ /opt/gcc-7.1.0/bin/gnatmake boiler-rdf_format-resource-parser.adb
gcc -c boiler-rdf_format-resource-parser.adb
boiler-rdf_format-resource-parser.adb:3:04: missing "return" statement in function body
boiler-rdf_format-resource-parser.adb:3:20: not type conformant with declaration at boiler-rdf_format-resource-parser.ads:29
boiler-rdf_format-resource-parser.adb:3:20: type of "S" does not match
boiler-rdf_format-resource-parser.adb:9:32: no selector "" for type "Command_Script_Info" defined at boiler-rdf_format-resource.ads:21
gnatmake: "boiler-rdf_format-resource-parser.adb" compilation error

and with GCC 8.0.0 gives

$ /opt/gcc-8.0.0/bin/gnatmake boiler-rdf_format-resource-parser.adb
gcc -c boiler-rdf_format-resource-parser.adb
boiler-rdf_format-resource-parser.adb:3:04: missing "return" statement in function body
boiler-rdf_format-resource-parser.adb:3:20: not type conformant with declaration at boiler-rdf_format-resource-parser.ads:29
boiler-rdf_format-resource-parser.adb:3:20: type of "S" does not match
rdf-redland-query_results.ads:35:19: subprogram "Finished" overrides inherited operation at rdf-auxiliary-limited_handled_record.ads:40, instance at line 90
rdf-redland-query_results.ads:35:19: subprogram "Finished" overrides inherited operation
gnatmake: "boiler-rdf_format-resource-parser.adb" compilation error

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: I am leaving Ada :-( because of GNAT bugs
  2017-12-07  7:45 I am leaving Ada :-( because of GNAT bugs Victor Porton
  2017-12-07  9:54 ` Simon Wright
@ 2017-12-09  8:53 ` bj.mooremr
  2017-12-09  9:35   ` Simon Wright
  2017-12-12 19:43   ` jm.tarrasa
  2017-12-12 22:57 ` Mehdi Saada
  2 siblings, 2 replies; 26+ messages in thread
From: bj.mooremr @ 2017-12-09  8:53 UTC (permalink / raw)


On Thursday, December 7, 2017 at 12:45:11 AM UTC-7, Victor Porton wrote:
> Yet one mysterious bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83310
> 
> I am leaving Ada and try to learn Rust or D, or maybe even code in C# 
> instead.
> 
> I cannot tolerate GNAT bugs anymore.
> 
> For the last bug I simply don't know what is a workaround.
> 
> -- 
> Victor Porton - http://portonvictor.org

I had a look at your sources, and managed to get it to compile with some fiddling. I did not encounter the compiler crash that you ran into, but there were a fair number of syntax errors in your sources.

I am not sure which version of GNAT you are using, GPL for FSF. Both are good quality compilers, but if you are running into compiler bugs in one, it might be worth trying your source in the other. For your source code, I was trying it out with GNAT GPL 2017.

The other point to mention is that it has been my experience that if the compiler is crashing, it generally means I am trying to do something really weird and not allowed in Ada, or doing something allowed but convoluted, or not elegant, and there is a better way to do the same thing.

Here are some of the main problems I found with the source.

1. Many bodies of packages were missing. To get these, I used the "Generate Body", utility from the GPS IDE, which generated most of these. I eventually got it to generate all the bodies, once I fixed the issues below. 

2. For a number of the tagged types, the Parse function had the controlling parameter as the second parameter. I think Ada might allow that, but I generally put the controlling parameter (the one that has the same type as the tagged type), at the beginning as the first parameter. It's a convention I always use, which I think helps readability, if nothing else. It may be that the compiler has better support for name resolution if you follow this convention, but I really dont know, as I never code that way. I tried to look this up in the RM, but couldnt not find a rule that says the controlling parameters need to come first.

3. Parse in Boilder.RDF_Format.Resource.Parser is missing a return statement, and the parameters in the body do not match the ones in the spec.

4. I would not put not overriding clauses on a primitive function that is a root type. If it is a root type, it cant be overriding anything. Having "not overriding" clauses on a root type might be weird enough that the compiler doesn't support that very well. I would get rid of those.

5. In RDF-auxiliary-limited_handled_record, you have a nested generic package, called Common_Handlers where there is a type derived from a generic formal type that is in turn derived from a type of the enclosing package. On the nested type declaration you are overriding the Finalize procedure as a controlled type, but doing that as a rename of a function in the enclosing package. That strikes me as likely something that the compiler might have trouble with. In fact, it was complaining about that line for me, but gave a compiler error, not a crash.
I fixed that by not declaring as a rename, but making it an actual procedure, then having that call the other function of the enclosing package in the body of Finalize.

6. In RDF.Raptor.Term, There are 3 subtypes declared of a tagged type, before all the primitive functions of the tagged type were declared. That might be OK, but I'd be concerned about freezing rules, and in any case, I think it is better form and more readable to move the subtype declarations down further to after all the primitive functions of the tagged type that they are subtypes of have been declared.

7. In the same area, you declare a subtype of an access type declared in another package, then try to override a primitive of a type from that other package, but using the subtype declared in the new package. I believe you need exact matching on the subtypes passed to the overridden package, for non-controlling parameters, which means you should declare your overriden function using the access type declared in the original package.

8. You have several places where you declare a subtype with Dynamic_Predicates

eg. subtype URI_Term_Type_Without_Finalize is Term_Type_Without_Finalize
     with Dynamic_Predicate => Is_URI(URI_Term_Type_Without_Finalize);

where Is_URI is a primitive function of the tagged type. I am not sure if it is legal to do it that way, but GNAT did not like this. I would use object prefix notation, which I think is more readable in this case and makes it more obvious that Is_URI is a primitive of the type. ie.

subtype URI_Term_Type_Without_Finalize is Term_Type_Without_Finalize
     with Dynamic_Predicate => URI_Term_Type_Without_Finalize.Is_URI;

GNAT is happy if you do it this way.

9. In rdf-redland-query_results.ads, you declare a type derived from a tagged type, but then try to apply a Pre'Class aspect. This apparently is not legal, though the GPL 2016 compiler doesn't complain. I ran into this, with my own code, that GPL 2017 told me with a compiler error that the code was not legal.

Pre'Class can only be applied to a root type apparently.

To fix that, change Pre'Class => to just Pre => 

That might be the issue that is actually causing the compiler to crash, if you are using the FSF GNAT. It might not have this check yet, and might have trouble generating the code.

Once I made these changes, the sources compiled. I had to create my own main program, because I couldn't see a main in your sources, nor did I see a project file, so I created a simple one from scratch.

Hopefully this will get you to reconsider your decision to leave Ada. 
I have done a little bit in Rust, and considerably more in C#.
 
For me, Ada is still by far the best choice, but you can come to your own conclusions. :-) 

Brad

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: I am leaving Ada :-( because of GNAT bugs
  2017-12-09  8:53 ` bj.mooremr
@ 2017-12-09  9:35   ` Simon Wright
  2017-12-11 22:47     ` Randy Brukardt
  2017-12-12 19:43   ` jm.tarrasa
  1 sibling, 1 reply; 26+ messages in thread
From: Simon Wright @ 2017-12-09  9:35 UTC (permalink / raw)


bj.mooremr@gmail.com writes:

> On Thursday, December 7, 2017 at 12:45:11 AM UTC-7, Victor Porton wrote:
>> Yet one mysterious bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83310

> I am not sure which version of GNAT you are using, GPL for FSF. Both
> are good quality compilers, but if you are running into compiler bugs
> in one, it might be worth trying your source in the other. For your
> source code, I was trying it out with GNAT GPL 2017.

OP said 7.2.0, => FSF.

> 2. For a number of the tagged types, the Parse function had the
> controlling parameter as the second parameter. I think Ada might allow
> that, but I generally put the controlling parameter (the one that has
> the same type as the tagged type), at the beginning as the first
> parameter.

It has to be the first parameter for object prefix notation to work (ARM
4.1.3(9.1) - that took some finding!)

> 9. In rdf-redland-query_results.ads, you declare a type derived from a
> tagged type, but then try to apply a Pre'Class aspect. This apparently
> is not legal, though the GPL 2016 compiler doesn't complain. I ran
> into this, with my own code, that GPL 2017 told me with a compiler
> error that the code was not legal.
>
> Pre'Class can only be applied to a root type apparently.

See ARM 6.1.1(17.1/4), "Pre'Class shall not be specified for an
overriding primitive subprogram of a tagged type T unless the Pre'Class
aspect is specified for the corresponding primitive subprogram of some
ancestor of T."

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: I am leaving Ada :-( because of GNAT bugs
  2017-12-09  9:35   ` Simon Wright
@ 2017-12-11 22:47     ` Randy Brukardt
  0 siblings, 0 replies; 26+ messages in thread
From: Randy Brukardt @ 2017-12-11 22:47 UTC (permalink / raw)



"Simon Wright" <simon@pushface.org> wrote in message 
news:lyy3mctfad.fsf@pushface.org...
> bj.mooremr@gmail.com writes:
...
>> 9. In rdf-redland-query_results.ads, you declare a type derived from a
>> tagged type, but then try to apply a Pre'Class aspect. This apparently
>> is not legal, though the GPL 2016 compiler doesn't complain. I ran
>> into this, with my own code, that GPL 2017 told me with a compiler
>> error that the code was not legal.
>>
>> Pre'Class can only be applied to a root type apparently.
>
> See ARM 6.1.1(17.1/4), "Pre'Class shall not be specified for an
> overriding primitive subprogram of a tagged type T unless the Pre'Class
> aspect is specified for the corresponding primitive subprogram of some
> ancestor of T."

That was a rule change in the 2015 Corrigendum. It was made because the 
derived Pre'Class will be ored with the inherited one, and if you've 
inherited from a routine with no Pre'Class, you are oring with True -- which 
means your new Pre'Class will be completely ignored.

Pre'Class makes sense mainly for a root class; one generally will use 
dispatching calls within it so it can adjust as needed for child types. If 
you need a precondition that doesn't fit into that model, you should use Pre 
(and be aware that you are violating the basic LSP approach).

                            Randy.



^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: I am leaving Ada :-( because of GNAT bugs
  2017-12-09  8:53 ` bj.mooremr
  2017-12-09  9:35   ` Simon Wright
@ 2017-12-12 19:43   ` jm.tarrasa
  2017-12-12 20:50     ` Dmitry A. Kazakov
  2017-12-12 21:15     ` Paul Rubin
  1 sibling, 2 replies; 26+ messages in thread
From: jm.tarrasa @ 2017-12-12 19:43 UTC (permalink / raw)


> I had a look at your sources, and managed to get it to compile with some fiddling. I did not encounter the compiler crash that you ran into, but there were a fair number of syntax errors in your sources.
> 

So what? That's what compilers are do: generate a binary or report syntax errors.

> I am not sure which version of GNAT you are using, GPL for FSF. Both are good quality compilers, but if you are running into compiler bugs in one, it might be worth trying your source in the other. For your source code, I was trying it out with GNAT GPL 2017.

That is the whole problem: He must fight, not just against his lack of knowledge of a new language, but also against compiler bugs. That could be acceptable to certain extend in new languages (Rust, Nim, Go...). But Ada is a mature language and it is supposed to have a mature and stable compiler, and mature and stable tools.

Ada boast of being a safe language, its tools should be rock solid and easy to install. Sometimes, reading comp.lang.ada, I have the feeling that Gnat, GPS, and most libraries are in a permanent beta status.
 


^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: I am leaving Ada :-( because of GNAT bugs
  2017-12-12 19:43   ` jm.tarrasa
@ 2017-12-12 20:50     ` Dmitry A. Kazakov
  2017-12-12 21:15     ` Paul Rubin
  1 sibling, 0 replies; 26+ messages in thread
From: Dmitry A. Kazakov @ 2017-12-12 20:50 UTC (permalink / raw)


On 2017-12-12 20:43, jm.tarrasa@gmail.com wrote:

> That is the whole problem: He must fight, not just against his lack
> of  knowledge of a new language, but also against compiler bugs.

This is partially true, but true is also that he uses the language in a 
quite strange way. Some constructs are not intended to do what he thinks 
they are for.

> That could be acceptable to certain extend in new languages (Rust,
> Nim, Go...). But Ada is a mature language and it is supposed to have
> a mature and stable  compiler, and mature and stable tools.

Ada has a mature core an some features on its fringes rarely used or 
used only in a certain way.

> Ada boast of being a safe language, its tools should be rock solid
> and easy to install. Sometimes, reading comp.lang.ada, I have the
> feeling  that Gnat, GPS, and most libraries are in a permanent beta status.

Again, there are few things that never quite worked in GNAT and probably 
never will. You should be very careful using generics and be prepared 
for anything. The rest is really rock solid and you can compile a 
quarter of century old source code without any problems. Same is true 
for GPS. Simply do not expect debugging to work, the rest is just fine. 
I don't know which libraries you have in mind. That depends on the 
particular maintainer.

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de


^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: I am leaving Ada :-( because of GNAT bugs
  2017-12-12 19:43   ` jm.tarrasa
  2017-12-12 20:50     ` Dmitry A. Kazakov
@ 2017-12-12 21:15     ` Paul Rubin
  2017-12-13  7:01       ` Luke A. Guest
  1 sibling, 1 reply; 26+ messages in thread
From: Paul Rubin @ 2017-12-12 21:15 UTC (permalink / raw)


jm.tarrasa@gmail.com writes:
> But Ada is a mature language and it is supposed to have a
> mature and stable compiler, and mature and stable tools.

It has many such compilers but it doesn't sound like the relatively new
GCC 7 is one of them.  I'd try rolling back to GCC 6.


^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: I am leaving Ada :-( because of GNAT bugs
  2017-12-07  7:45 I am leaving Ada :-( because of GNAT bugs Victor Porton
  2017-12-07  9:54 ` Simon Wright
  2017-12-09  8:53 ` bj.mooremr
@ 2017-12-12 22:57 ` Mehdi Saada
  2017-12-13  6:43   ` Per Sandberg
                     ` (3 more replies)
  2 siblings, 4 replies; 26+ messages in thread
From: Mehdi Saada @ 2017-12-12 22:57 UTC (permalink / raw)


generics ? Compiling generics is troublesome ? I don't want to butt in, but that's quite an annoying considering it's one of the oldest and most original feature of this language. It would suck a bit...


^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: I am leaving Ada :-( because of GNAT bugs
  2017-12-12 22:57 ` Mehdi Saada
@ 2017-12-13  6:43   ` Per Sandberg
  2017-12-13  7:01   ` Luke A. Guest
                     ` (2 subsequent siblings)
  3 siblings, 0 replies; 26+ messages in thread
From: Per Sandberg @ 2017-12-13  6:43 UTC (permalink / raw)


And after struggling with a bunch of different compilers and languages i 
would say the Ada/GNAT is the most rock-solíd thing i have encountered.

Den 2017-12-12 kl. 23:57, skrev Mehdi Saada:
> generics ? Compiling generics is troublesome ? I don't want to butt in, but that's quite an annoying considering it's one of the oldest and most original feature of this language. It would suck a bit...
> 

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: I am leaving Ada :-( because of GNAT bugs
  2017-12-12 21:15     ` Paul Rubin
@ 2017-12-13  7:01       ` Luke A. Guest
  2017-12-13 17:46         ` Jeffrey R. Carter
  2017-12-15 21:52         ` Paul Rubin
  0 siblings, 2 replies; 26+ messages in thread
From: Luke A. Guest @ 2017-12-13  7:01 UTC (permalink / raw)


Paul Rubin <no.email@nospam.invalid> wrote:
> jm.tarrasa@gmail.com writes:
>> But Ada is a mature language and it is supposed to have a
>> mature and stable compiler, and mature and stable tools.
> 
> It has many such compilers but it doesn't sound like the relatively new
> GCC 7 is one of them.  I'd try rolling back to GCC 6.
> 

I really wish you people would stop with the lie that there are many
compilers when there are many versions of the same compiler.

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: I am leaving Ada :-( because of GNAT bugs
  2017-12-12 22:57 ` Mehdi Saada
  2017-12-13  6:43   ` Per Sandberg
@ 2017-12-13  7:01   ` Luke A. Guest
  2017-12-13  8:03   ` G. B.
  2017-12-13 17:41   ` Jeffrey R. Carter
  3 siblings, 0 replies; 26+ messages in thread
From: Luke A. Guest @ 2017-12-13  7:01 UTC (permalink / raw)


Mehdi Saada <00120260a@gmail.com> wrote:
> generics ? Compiling generics is troublesome ? I don't want to butt in,
> but that's quite an annoying considering it's one of the oldest and most
> original feature of this language. It would suck a bit...
> 

Added to the fact you can’t really do much without generics in Ada.

Although, I’ve not had any problems.


^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: I am leaving Ada :-( because of GNAT bugs
  2017-12-12 22:57 ` Mehdi Saada
  2017-12-13  6:43   ` Per Sandberg
  2017-12-13  7:01   ` Luke A. Guest
@ 2017-12-13  8:03   ` G. B.
  2017-12-13  9:06     ` Dmitry A. Kazakov
  2017-12-13 17:41   ` Jeffrey R. Carter
  3 siblings, 1 reply; 26+ messages in thread
From: G. B. @ 2017-12-13  8:03 UTC (permalink / raw)


Mehdi Saada <00120260a@gmail.com> wrote:
> generics ? Compiling generics is troublesome ?

When Dmitry says something about generics,
he has been implying their use for emulating
static polymorphism and as a replacement for
generic types. A narrow perspective on generics 
and pushing them to limits that require substantial 
amounts of training in order to still follow.

Just Ada generics failing would have put
AdaCore out of business in no time, and other
vendors, too. Given that this is not the case,
you might see the remark in a different light.




^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: I am leaving Ada :-( because of GNAT bugs
  2017-12-13  8:03   ` G. B.
@ 2017-12-13  9:06     ` Dmitry A. Kazakov
  0 siblings, 0 replies; 26+ messages in thread
From: Dmitry A. Kazakov @ 2017-12-13  9:06 UTC (permalink / raw)


On 13/12/2017 09:03, G. B. wrote:
> Mehdi Saada <00120260a@gmail.com> wrote:
>> generics ? Compiling generics is troublesome ?
> 
> When Dmitry says something about generics,
> he has been implying their use for emulating
> static polymorphism and as a replacement for
> generic types.

Generics don't emulate, they is static polymorphism.

> A narrow perspective on generics
> and pushing them to limits that require substantial
> amounts of training in order to still follow.

Yes. My perspective is much narrower, than the perspective of people 
coming with C++ background. They are trying to do things they used to do 
with templates and use generics in a way they never intended to be used 
and never really worked.

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de


^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: I am leaving Ada :-( because of GNAT bugs
  2017-12-12 22:57 ` Mehdi Saada
                     ` (2 preceding siblings ...)
  2017-12-13  8:03   ` G. B.
@ 2017-12-13 17:41   ` Jeffrey R. Carter
  3 siblings, 0 replies; 26+ messages in thread
From: Jeffrey R. Carter @ 2017-12-13 17:41 UTC (permalink / raw)


On 12/12/2017 11:57 PM, Mehdi Saada wrote:
> generics ? Compiling generics is troublesome ? I don't want to butt in, but that's quite an annoying considering it's one of the oldest and most original feature of this language. It would suck a bit...

If you use generics the way they're intended to be used you'll have no problem. 
If you try to use them the way some people try to use them you may have 
difficulties.

-- 
Jeff Carter
"It has been my great privilege, many years ago,
whilst traveling through the mountains of Paraguay,
to find the Yack'Wee Indians drinking the juice of
the cacti."
The Old Fashioned Way
152

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: I am leaving Ada :-( because of GNAT bugs
  2017-12-13  7:01       ` Luke A. Guest
@ 2017-12-13 17:46         ` Jeffrey R. Carter
  2017-12-13 19:37           ` Jacob Sparre Andersen
  2017-12-14 12:52           ` Lucretia
  2017-12-15 21:52         ` Paul Rubin
  1 sibling, 2 replies; 26+ messages in thread
From: Jeffrey R. Carter @ 2017-12-13 17:46 UTC (permalink / raw)


On 12/13/2017 08:01 AM, Luke A. Guest wrote:
> 
> I really wish you people would stop with the lie that there are many
> compilers when there are many versions of the same compiler.

* AdaCore
* DDC-I
* Greenhills S/W
* Irvine
* PTC
* RR S/W

I'm surprised to learn they all offer versions of the same compiler.

-- 
Jeff Carter
"It has been my great privilege, many years ago,
whilst traveling through the mountains of Paraguay,
to find the Yack'Wee Indians drinking the juice of
the cacti."
The Old Fashioned Way
152


^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: I am leaving Ada :-( because of GNAT bugs
  2017-12-13 17:46         ` Jeffrey R. Carter
@ 2017-12-13 19:37           ` Jacob Sparre Andersen
  2017-12-13 21:52             ` Jeffrey R. Carter
  2017-12-14 12:52           ` Lucretia
  1 sibling, 1 reply; 26+ messages in thread
From: Jacob Sparre Andersen @ 2017-12-13 19:37 UTC (permalink / raw)


Jeffrey R. Carter wrote:
> Luke A. Guest wrote:

>> I really wish you people would stop with the lie that there are many
>> compilers when there are many versions of the same compiler.
>
> * AdaCore
> * DDC-I
> * Greenhills S/W
> * Irvine
> * PTC
> * RR S/W
>
> I'm surprised to learn they all offer versions of the same compiler.

Given the convention I've learned, only AdaCore and FSF provide an "Ada
compiler" (and basically the same one).  The other companies provide
"Ada XXXX compilers".

Greetings,

Jacob
-- 
A: Yes.
>Q: Are you sure?
>>A: Because it reverses the logical flow of conversation.
>>>Q: Why is top posting frowned upon?

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: I am leaving Ada :-( because of GNAT bugs
  2017-12-13 19:37           ` Jacob Sparre Andersen
@ 2017-12-13 21:52             ` Jeffrey R. Carter
  2017-12-14 12:54               ` Lucretia
  0 siblings, 1 reply; 26+ messages in thread
From: Jeffrey R. Carter @ 2017-12-13 21:52 UTC (permalink / raw)


On 12/13/2017 08:37 PM, Jacob Sparre Andersen wrote:
> Jeffrey R. Carter wrote:
>> Luke A. Guest wrote:
> 
>>> I really wish you people would stop with the lie that there are many
>>> compilers when there are many versions of the same compiler.
>>
>> * AdaCore
>> * DDC-I
>> * Greenhills S/W
>> * Irvine
>> * PTC
>> * RR S/W
>>
>> I'm surprised to learn they all offer versions of the same compiler.
> 
> Given the convention I've learned, only AdaCore and FSF provide an "Ada
> compiler" (and basically the same one).  The other companies provide
> "Ada XXXX compilers".

If you want to pick nits, Guest said "compiler", not "Ada compiler".

-- 
Jeff Carter
"It has been my great privilege, many years ago,
whilst traveling through the mountains of Paraguay,
to find the Yack'Wee Indians drinking the juice of
the cacti."
The Old Fashioned Way
152

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: I am leaving Ada :-( because of GNAT bugs
  2017-12-13 17:46         ` Jeffrey R. Carter
  2017-12-13 19:37           ` Jacob Sparre Andersen
@ 2017-12-14 12:52           ` Lucretia
  2017-12-14 13:44             ` Dmitry A. Kazakov
  2017-12-14 17:01             ` Jeffrey R. Carter
  1 sibling, 2 replies; 26+ messages in thread
From: Lucretia @ 2017-12-14 12:52 UTC (permalink / raw)


On Wednesday, 13 December 2017 17:46:29 UTC, Jeffrey R. Carter  wrote:
> 
> * DDC-I
> * Greenhills S/W
> * Irvine
> * PTC

How many people without company backing are using these compilers? Er, none?

> * RR S/W

The only affordable one.

My comment was aimed at your comment that the various GNAT's are all different compilers, which they're not, same source base, different versions = 1 compiler.

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: I am leaving Ada :-( because of GNAT bugs
  2017-12-13 21:52             ` Jeffrey R. Carter
@ 2017-12-14 12:54               ` Lucretia
  0 siblings, 0 replies; 26+ messages in thread
From: Lucretia @ 2017-12-14 12:54 UTC (permalink / raw)


On Wednesday, 13 December 2017 21:52:40 UTC, Jeffrey R. Carter  wrote:

> If you want to pick nits, Guest said "compiler", not "Ada compiler".

Jesus! In reference to Ada compilers, the Ada is implied by context and don't call me Guest.

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: I am leaving Ada :-( because of GNAT bugs
  2017-12-14 12:52           ` Lucretia
@ 2017-12-14 13:44             ` Dmitry A. Kazakov
  2017-12-14 14:53               ` MM
  2017-12-14 17:01             ` Jeffrey R. Carter
  1 sibling, 1 reply; 26+ messages in thread
From: Dmitry A. Kazakov @ 2017-12-14 13:44 UTC (permalink / raw)


On 14/12/2017 13:52, Lucretia wrote:

> My comment was aimed at your comment that the various GNAT's are all
> different compilers, which they're not, same source base, different
> versions = 1 compiler.

It is an obvious truth that there is no choice but GNAT. This is how 
things are these days. Except for maybe C, which has some petrified 
remnants from the times the compiler market existed, all other languages 
alive have basically one usable/available/maintained compiler. Ada is in 
the club.

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: I am leaving Ada :-( because of GNAT bugs
  2017-12-14 13:44             ` Dmitry A. Kazakov
@ 2017-12-14 14:53               ` MM
  2017-12-14 16:43                 ` Luke A. Guest
  0 siblings, 1 reply; 26+ messages in thread
From: MM @ 2017-12-14 14:53 UTC (permalink / raw)


On Thursday, 14 December 2017 13:44:24 UTC, Dmitry A. Kazakov  wrote:
> On 14/12/2017 13:52, Lucretia wrote:
> 
> > My comment was aimed at your comment that the various GNAT's are all
> > different compilers, which they're not, same source base, different
> > versions = 1 compiler.
> 
> It is an obvious truth that there is no choice but GNAT. This is how 
> things are these days. Except for maybe C, which has some petrified 
> remnants from the times the compiler market existed, all other languages 
> alive have basically one usable/available/maintained compiler. Ada is in 
> the club.

For C/C++/ObjC, you forget the very alive Clang/LLVM.

M


^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: I am leaving Ada :-( because of GNAT bugs
  2017-12-14 14:53               ` MM
@ 2017-12-14 16:43                 ` Luke A. Guest
  2017-12-14 19:37                   ` MM
  0 siblings, 1 reply; 26+ messages in thread
From: Luke A. Guest @ 2017-12-14 16:43 UTC (permalink / raw)


MM <mrvmurray@gmail.com> wrote:
> On Thursday, 14 December 2017 13:44:24 UTC, Dmitry A. Kazakov  wrote:
>> On 14/12/2017 13:52, Lucretia wrote:
>> 
>>> My comment was aimed at your comment that the various GNAT's are all
>>> different compilers, which they're not, same source base, different
>>> versions = 1 compiler.
>> 
>> It is an obvious truth that there is no choice but GNAT. This is how 
>> things are these days. Except for maybe C, which has some petrified 
>> remnants from the times the compiler market existed, all other languages 
>> alive have basically one usable/available/maintained compiler. Ada is in 
>> the club.
> 
> For C/C++/ObjC, you forget the very alive Clang/LLVM.
> 

But, we are talking about Ada compilers.

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: I am leaving Ada :-( because of GNAT bugs
  2017-12-14 12:52           ` Lucretia
  2017-12-14 13:44             ` Dmitry A. Kazakov
@ 2017-12-14 17:01             ` Jeffrey R. Carter
  1 sibling, 0 replies; 26+ messages in thread
From: Jeffrey R. Carter @ 2017-12-14 17:01 UTC (permalink / raw)


On 12/14/2017 01:52 PM, Lucretia wrote:
> 
> My comment was aimed at your comment that the various GNAT's are all different compilers, which they're not, same source base, different versions = 1 compiler.

I didn't say that. You were replying to Rubin. He didn't say that, either.

-- 
Jeff Carter
"Go and boil your bottoms."
Monty Python & the Holy Grail
01


^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: I am leaving Ada :-( because of GNAT bugs
  2017-12-14 16:43                 ` Luke A. Guest
@ 2017-12-14 19:37                   ` MM
  0 siblings, 0 replies; 26+ messages in thread
From: MM @ 2017-12-14 19:37 UTC (permalink / raw)


On Thursday, 14 December 2017 16:43:44 UTC, Luke A. Guest  wrote:
> MM <mr....@gmail.com> wrote:
> >> It is an obvious truth that there is no choice but GNAT. This is how 
> >> things are these days. Except for maybe C, which has some petrified 
> >> remnants from the times the compiler market existed, all other languages 
> >> alive have basically one usable/available/maintained compiler. Ada is in 
> >> the club.
> > 
> > For C/C++/ObjC, you forget the very alive Clang/LLVM.
> > 
> 
> But, we are talking about Ada compilers.

I know, but I was addressing the "petrified remnants" reference to C.

M
-- 



^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: I am leaving Ada :-( because of GNAT bugs
  2017-12-13  7:01       ` Luke A. Guest
  2017-12-13 17:46         ` Jeffrey R. Carter
@ 2017-12-15 21:52         ` Paul Rubin
  1 sibling, 0 replies; 26+ messages in thread
From: Paul Rubin @ 2017-12-15 21:52 UTC (permalink / raw)


Luke A. Guest <laguest@archeia.com> writes:
>> It has many such compilers but it doesn't sound like the relatively new
>> GCC 7 is one of them.  I'd try rolling back to GCC 6.
> I really wish you people would stop with the lie that there are many
> compilers when there are many versions of the same compiler.

Fine, a rewrite.  GCC has two older major versions (GCC 5 and GCC 6)
that are still under official active maintenance, for those who want
thoroughly exercised compilers (plus even older versions that are under
various forms of unofficial maintenance).  It also has the current GCC 7
for those who want the latest bleeding edge improvements.

If you want maturity you might have better luck with GCC 5 or GCC 6
than GCC 7.


^ permalink raw reply	[flat|nested] 26+ messages in thread

end of thread, other threads:[~2017-12-15 21:52 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-12-07  7:45 I am leaving Ada :-( because of GNAT bugs Victor Porton
2017-12-07  9:54 ` Simon Wright
2017-12-09  8:53 ` bj.mooremr
2017-12-09  9:35   ` Simon Wright
2017-12-11 22:47     ` Randy Brukardt
2017-12-12 19:43   ` jm.tarrasa
2017-12-12 20:50     ` Dmitry A. Kazakov
2017-12-12 21:15     ` Paul Rubin
2017-12-13  7:01       ` Luke A. Guest
2017-12-13 17:46         ` Jeffrey R. Carter
2017-12-13 19:37           ` Jacob Sparre Andersen
2017-12-13 21:52             ` Jeffrey R. Carter
2017-12-14 12:54               ` Lucretia
2017-12-14 12:52           ` Lucretia
2017-12-14 13:44             ` Dmitry A. Kazakov
2017-12-14 14:53               ` MM
2017-12-14 16:43                 ` Luke A. Guest
2017-12-14 19:37                   ` MM
2017-12-14 17:01             ` Jeffrey R. Carter
2017-12-15 21:52         ` Paul Rubin
2017-12-12 22:57 ` Mehdi Saada
2017-12-13  6:43   ` Per Sandberg
2017-12-13  7:01   ` Luke A. Guest
2017-12-13  8:03   ` G. B.
2017-12-13  9:06     ` Dmitry A. Kazakov
2017-12-13 17:41   ` Jeffrey R. Carter

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox