comp.lang.ada
 help / color / mirror / Atom feed
* GCC release notes, aka, Ada is still alive!
@ 2021-10-11 18:41 Fernando Oleo Blanco
  2021-10-12 12:54 ` Fabien Chouteau
  2021-10-14  8:24 ` Stéphane Rivière
  0 siblings, 2 replies; 8+ messages in thread
From: Fernando Oleo Blanco @ 2021-10-11 18:41 UTC (permalink / raw)


Hi everybody,

I have been meaning to write this message for a long while, so here it goes.

Reading Phoronix [1] for years, I noticed that with every new GCC 
release, the biggest changes to GCC and its languages were mentioned. 
However, Ada was pretty much never present.

Today, just a few moments ago in #netbsd, someone asked whether Ada had 
finally been dropped out of GCC... I am not even mad. GCC's release 
notes have not mentioned Ada since GCC 8 [2], [3], [4]; and even in GCC 
7 and 8 the notes are minute.

So I would like to ask whether someone would like to help me get release 
notes ready. I am not saying that I will be doing much, but I would like 
to breath some fresh air into how Ada is seen and how much people hear 
about it.

I personally do not like marketing since good products stand on their 
merits, not slogans or shininess. But there is no reason to not put 
publicly what is going on.

Yes, AdaCore has been doing some very nice followups to the development 
of Ada in their blog [5]. But the people that go there, are already 
aware of Ada. And since AdaCore is phasing out their GNAT CE system in 
favour of FSF builds (included in Alire), the relevance of GCC's 
releases grows.

Note, I am not implying that AdaCore should write the releases. They are 
doing the bulk of work in GNAT, so I do not think they _need_ to do 
more. Personally I am glad with what they are doing, but of course, they 
can write the releases if they so want.

I am specially saddened by the fact that GCC has gotten a substantial 
amount of support for Ada 2022 and it is not even mentioned. No wonder 
why people think Ada is dead!

So, if you have any recommendation, or would like to help, then you are 
more than welcomed!

P.S.: I am already doing my part GNAT in NetBSD x86_64 is working! It 
has 9 failed ACATS tests, but they are minor. A thousand thanks go to J. 
Marino and Tobiasu for their enormous help in #ada. Today I will see if 
I can compile it for armv6 and run it on my RPi!

[1] https://www.phoronix.com/scan.php?page=home
[2] https://gcc.gnu.org/gcc-7/changes.html
[3] https://gcc.gnu.org/gcc-8/changes.html
[4] https://gcc.gnu.org/gcc-9/changes.html
[5] https://blog.adacore.com/
-- 
Fernando Oleo Blanco
https://irvise.xyz

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

* Re: GCC release notes, aka, Ada is still alive!
  2021-10-11 18:41 GCC release notes, aka, Ada is still alive! Fernando Oleo Blanco
@ 2021-10-12 12:54 ` Fabien Chouteau
  2021-10-12 18:37   ` Tero Koskinen
  2021-10-14  8:24 ` Stéphane Rivière
  1 sibling, 1 reply; 8+ messages in thread
From: Fabien Chouteau @ 2021-10-12 12:54 UTC (permalink / raw)


On Monday, October 11, 2021 at 8:41:22 PM UTC+2, Fernando Oleo Blanco wrote:
> Yes, AdaCore has been doing some very nice followups to the development 
> of Ada in their blog [5]. But the people that go there, are already 
> aware of Ada. 

Most, if not all, of what is in this blog post [1] is applicable to GNAT/GCC 11.

[1] https://blog.adacore.com/ada-202x-support-in-gnat

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

* Re: GCC release notes, aka, Ada is still alive!
  2021-10-12 12:54 ` Fabien Chouteau
@ 2021-10-12 18:37   ` Tero Koskinen
  2021-10-12 19:28     ` Tero Koskinen
  0 siblings, 1 reply; 8+ messages in thread
From: Tero Koskinen @ 2021-10-12 18:37 UTC (permalink / raw)


Hi,

On Tue, 12 Oct 2021 05:54:33 -0700 (PDT)
Fabien Chouteau <fabien.chouteau@gmail.com> wrote:

> On Monday, October 11, 2021 at 8:41:22 PM UTC+2, Fernando Oleo Blanco wrote:
> > Yes, AdaCore has been doing some very nice followups to the development 
> > of Ada in their blog [5]. But the people that go there, are already 
> > aware of Ada. 
> 
> Most, if not all, of what is in this blog post [1] is applicable to GNAT/GCC 11.
> 
> [1] https://blog.adacore.com/ada-202x-support-in-gnat

I guess the main point of Fernando was that it would be nice if someone
could add all the new changes between versions 11 and 12 to
https://gcc.gnu.org/gcc-12/changes.html before GCC 12 is released.

gcc-X/changes.html traditionally lists some items for all other language
frontends, but there is never anything for Ada.

The git history for gcc-12/changes.html page is visible at
https://gcc.gnu.org/git/?p=gcc-wwwdocs.git;a=history;f=htdocs/gcc-12/changes.html;h=f38fd2bef9c4089369e6f9315590ebffd8b24f5c;hb=HEAD

(that is gcc-wwwdocs repository at gcc.gnu.org/git).

Maybe someone with enough free time (and enough knowledge about the
changes) could take look and provide a patch for GCC web page
maintainers?

Yours,
 Tero

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

* Re: GCC release notes, aka, Ada is still alive!
  2021-10-12 18:37   ` Tero Koskinen
@ 2021-10-12 19:28     ` Tero Koskinen
  2021-10-13 16:32       ` Fernando Oleo Blanco
  0 siblings, 1 reply; 8+ messages in thread
From: Tero Koskinen @ 2021-10-12 19:28 UTC (permalink / raw)


On Tue, 12 Oct 2021 21:37:25 +0300
Tero Koskinen <tero.koskinen@iki.fi> wrote:
> gcc-wwwdocs repository at gcc.gnu.org/git
> Maybe someone

I decided to try an example. I must confess that I don't know where
the cutoff point for GCC 11 was and what it changes actually did
(the commit log messages aren't that clear if you don't actually
follow the development of GCC/GNAT/Ada in detail).

But here is the idea what the patches could looks like. (And yes,
I know that comp.lang.ada is totally incorrect place for the diff.)

From e9e0e6e178b0acb0021abe6aaadaa14ef00e8d2f Mon Sep 17 00:00:00 2001
From: Tero Koskinen <tero.koskinen@iki.fi>
Date: Tue, 12 Oct 2021 22:23:01 +0300
Subject: [PATCH] [GCC-12] Mention some GNAT changes.

---
 htdocs/gcc-12/changes.html | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/htdocs/gcc-12/changes.html b/htdocs/gcc-12/changes.html
index f38fd2be..5710ad8f 100644
--- a/htdocs/gcc-12/changes.html
+++ b/htdocs/gcc-12/changes.html
@@ -109,7 +109,17 @@ a work-in-progress.</p>
   </li>
 </ul>
 
-<!-- <h3 id="ada">Ada</h3> -->
+<h3 id="ada">Ada</h3>
+
+<ul>
+  <li>Implemented or improved following Ada 202x features:
+    <ul>
+      <li>AI12-0195: overriding class-wide pre/postconditions</li>
+      <li>AI12-0212: Container aggregates</li>
+    </ul>
+  </li>
+  <li>Marked gnatfind and gnatxref tools as obsolete</li>
+</ul>
 
 <!-- <h3 id="brig">BRIG (HSAIL)</h3> -->
 
-- 
2.31.1

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

* Re: GCC release notes, aka, Ada is still alive!
  2021-10-12 19:28     ` Tero Koskinen
@ 2021-10-13 16:32       ` Fernando Oleo Blanco
  2021-10-13 19:59         ` Simon Wright
  0 siblings, 1 reply; 8+ messages in thread
From: Fernando Oleo Blanco @ 2021-10-13 16:32 UTC (permalink / raw)


Thank you to everybody that commented on the topic.

We could use the Changelog present in the gcc/ada directory to triage 
commits more precisely (credit goes to Stéphane).

On 12.10.21 21:28, Tero Koskinen wrote:
> I decided to try an example. I must confess that I don't know where
> the cutoff point for GCC 11 was and what it changes actually did
> (the commit log messages aren't that clear if you don't actually
> follow the development of GCC/GNAT/Ada in detail).

To be honest, we could try to write the changelog for GCC 11 with the 
information given by Fabien (AdaCore) and what we find out. If for 
whatever reason the GCC people do not want to make large changes to the 
already released changelog, we could compile a larger list for GCC 12.

I think the most important aspects are:
- Ada 2022, which has a long list of changes on its own;
- Improvements to systems (VxWorks, RTMS, etc), as it shows that Ada is 
present in more places than what meets the eye;
- Deprecations and fixes;
- General improvements in the library, SPARK and with the GCC ecosystem. 
I think Ada has somewhat acceptable support for OpenMP, which was 
improved in the past few years, for example. It has also been increasing 
SPARK support in the libraries.

> But here is the idea what the patches could looks like. (And yes,
> I know that comp.lang.ada is totally incorrect place for the diff.)

I think that the diff included is a good example of what it would be to 
write the main changes.

I want to sign up for GCC's gcc mailing list (general discussion) and 
ask the GCC people what would be the preferred way to move forward. Hey, 
maybe they would like to have Ada changelogs for all past releases! If I 
hear anything back I will tell you.

Though if someone wants to start, I see no problem on sharing diffs 
here. Not the most ideal place, but it is a good forum to share ideas.

Regards,
-- 
Fernando Oleo Blanco
https://irvise.xyz

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

* Re: GCC release notes, aka, Ada is still alive!
  2021-10-13 16:32       ` Fernando Oleo Blanco
@ 2021-10-13 19:59         ` Simon Wright
  0 siblings, 0 replies; 8+ messages in thread
From: Simon Wright @ 2021-10-13 19:59 UTC (permalink / raw)


Fernando Oleo Blanco <irvise_ml@irvise.xyz> writes:

> - General improvements in the library, SPARK and with the GCC
>   ecosystem. I think Ada has somewhat acceptable support for OpenMP,
>  which was improved in the past few years, for example. It has also
> been increasing SPARK support in the libraries.

Not sure how to work SPARK into a GCC note, since it's not part of the
GCC ecosystem?

"There's extensive support for possible static analysis of code,
e.g. via SPARK, in the form of annotations that can optionally be
compiled as runtime assertions."

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

* Re: GCC release notes, aka, Ada is still alive!
  2021-10-11 18:41 GCC release notes, aka, Ada is still alive! Fernando Oleo Blanco
  2021-10-12 12:54 ` Fabien Chouteau
@ 2021-10-14  8:24 ` Stéphane Rivière
  2021-10-14 10:31   ` J-P. Rosen
  1 sibling, 1 reply; 8+ messages in thread
From: Stéphane Rivière @ 2021-10-14  8:24 UTC (permalink / raw)


Hope this time, it will working... (random problem here sending to NG
groups)

Hi Fernando,

> So, if you have any recommendation, or would like to help, then you are
> more than welcomed!

I second that and I would like to help, if I may.

According to gcc-mirror on github, Ada basecode is above C++

C 47.7%
Ada 17.5%
C++ 14.9%
Go 7.4%
GCC Machine Description 4.7%
Fortran 2.4%
Other 5.4%

git clone https://github.com/gcc-mirror/gcc

git log > log.gcc (volume: 124M)
cat log.gcc | grep adacore > log.ada (1M, ~25K contribs since 2005)
grep "\[Ada\]" ./log.gcc > log-oneliner.ada (190K, 3200 lines)

grep -B 2 -A 20 adacore log.gcc > log-detail.ada
cat log-detail.ada | grep -B 2 -A 20 [ada] log.gcc > log-changes.ada


It seems that everything is there to create a more or less relevant
changelog.

But Adalog's comments are one thing, sorted and relevant informations
for developers are another.

A raw copy/paste would be useless, we would have to analyze the
changelog to give back useful information.

We should also edit a changelog for each GCC release. The above metrics
were made on master.

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

* Re: GCC release notes, aka, Ada is still alive!
  2021-10-14  8:24 ` Stéphane Rivière
@ 2021-10-14 10:31   ` J-P. Rosen
  0 siblings, 0 replies; 8+ messages in thread
From: J-P. Rosen @ 2021-10-14 10:31 UTC (permalink / raw)


Le 14/10/2021 à 10:24, Stéphane Rivière a écrit :
> But Adalog's comments are one thing, sorted and relevant informations
> for developers are another.
I think you meant Adacore's...

-- 
J-P. Rosen
Adalog
2 rue du Docteur Lombard, 92441 Issy-les-Moulineaux CEDEX
Tel: +33 1 45 29 21 52
https://www.adalog.fr

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

end of thread, other threads:[~2021-10-14 10:31 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-11 18:41 GCC release notes, aka, Ada is still alive! Fernando Oleo Blanco
2021-10-12 12:54 ` Fabien Chouteau
2021-10-12 18:37   ` Tero Koskinen
2021-10-12 19:28     ` Tero Koskinen
2021-10-13 16:32       ` Fernando Oleo Blanco
2021-10-13 19:59         ` Simon Wright
2021-10-14  8:24 ` Stéphane Rivière
2021-10-14 10:31   ` J-P. Rosen

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