comp.lang.ada
 help / color / mirror / Atom feed
From: Ludovic Brenta <ludovic@ludovic-brenta.org>
Subject: Re: Next Ada compiler for Debian: the votes so far
Date: Tue, 20 Sep 2005 20:53:59 +0200
Date: 2005-09-20T20:53:59+02:00	[thread overview]
Message-ID: <87zmq7zi2g.fsf@ludovic-brenta.org> (raw)
In-Reply-To: 87u0gjd8kj.fsf@ludovic-brenta.org

Here are the final results of the vote.  I thought I'd leave the vote
open, but so few new votes have been cast recently that the results
can no longer change.

Voter              gnat-gpl  gnat-3.4  gnat-4.0  gnat-3.4+patches WAIT
Adrian Wrigley         -1                       
Andreas Schwartz       -1                       
Björn Persson          -1                       
Brian May               1                  1    
Chris Danx             -1                  1    
David Gressett         -1                       
David Trudgett         -1                       
Georg Bauhaus                                                       1
Jacob Sparre Andersen  -1         1        2    
Jeff Creem             -1                       
Jeffrey Carter         -1                       
Marc A. Criley         -1         1        2    
Niklas Holsti          -1                       
Samuel Tardieu         -1         1        2    
Simon Clubley          -1         1        2    
Simon Wright                               1    
Stéphane Rivière       -1         1        2    
Tapio Kelloniemi        1                  2    
Wojtek Narczynski      -1                  1    
Xavier Grave            2                  1    
Anonymous #1            2         1       -1    
Anonymous #2           -1                       
Anonymous #3           -1                       
                                
TOTALS:               -11         6       16             0          1

And here is a summary of the arguments that were presented, in no
particular order.  In these summaries I've tried not to take sides,
but please forgive me if I've misrepresented your own pet argument.
The text below will appear in the next edition of the Debian Policy
for Ada, in an appendix.  If I've missed an interesting argument or if
you think I am being offensive, please correct me.  I've tried to keep
the summaries short and to the point, at the expense of nuance.

The anarchist argument: it is immoral for AdaCore to dictate how
libgnat should be used; everyone should be free to use libgnat however
they see fit, and the GPL uses violent but lawful means to make this
impossible.  Therefore, everyone should reject the GNAT GPL 2005
Edition.

The Free Software argument: it is immoral to write non-free software;
it is even more immoral to use a free software library such as libgnat
in non-free software.  It is appropriate to make this illegal by
releasing libgnat under the GPL.  Therefore, everyone should embrace
GNAT GPL 2005 Edition.

The Other Free Software argument: we make Free Software under a
license which is incompatible in some ways with the GPL (e.g. the BSD
license).  The GPL prohibits linking libgnat with our software and
distributing our binaries.  Therefore, we reject the GNAT GPL 2005
Edition.

The selfish argument: we make commercial proprietary software with
GNAT, but we cannot or will not pay for GNAT Pro.  If libgnat is under
GPL, we can no longer distribute our proprietary software.  Therefore,
we reject GNAT GPL 2005 Edition.

The interoperability argument: our software has to link with non-free
software which is outside our control, and the license of which
prohibits use of GPLed libraries (variant: we link with other Free
libraries which are under licenses not compatible with the GPL);
therefore, we are forced to reject GNAT GPL 2005 Edition.

The betrayed author's argument: I made contributions to the software
that is now supported commercially by AdaCore, with the understanding
that the license was the GMGPL.  AdaCore revoked the special
permission without consulting me.  While this is specifically allowed
by the GPL, I feel betrayed.  Therefore, I reject the GNAT GPL 2005
Edition.

The technical quality argument: GNAT GPL 2005 Edition is the best
available Ada compiler.  GCC 3.4 is not as up-to-date with respect to
Ada 2006, and GCC 4.0 is less stable.  Therefore, we should embrace
GNAT GPL 2005 Edition.

The marketing argument: licensing libgnat under the GPL hinders
promotion of Ada, especially to small businesses.  The move tries to
promote Free Software at the expense of Ada.  Free Software does not
need much promotion while Ada does.  Therefore, we should reject GNAT
GPL 2005 Edition.

*Moving forward*

Given the results of the vote, I will not package GNAT GPL Edition for
Debian.

Given the anticipated timeline for the development of Etch (outlined
below), I can do a one-, two- or three-stage transition.

*Timeline for the development of Etch*

Roughly speaking, the tentative timeline is:

June 2005 - Sarge released.  gcc-4.0 enters Etch.  Transition from
g++-3.3 to g++-4.0 begins for all C++ binaries.  Other transitions
also begin, some of which are completed already today.

September 2005 - Java and Treelang compilers, and some libraries from
gcc-3.3 and gcc-3.4 removed from Etch.

April or May 2006 - GCC 4.1 released, and enters Etch soon thereafter.
If good enough, becomes the default C, C++ and Java compiler, and
gcc-4.0 is removed from Etch.  No ABI transition: GCC 4.0 and 4.1 are
both supposed to have the same ABI as 3.4.

September 2006 - toolchain freeze.  Only release-critical updates
allowed for gcc.  No ABI transitions allowed, i.e. shared libraries
may not change their soname anymore.

October 2006 - general freeze.  Only release-critical updates allowed
for all packages.

December 2006 - Etch released.

*Possible scenarios*

One-stage transition, between May and September 2006, to gnat-4.1.
Pros: less work for me.  GNAT 3.15p remains available for longer for
those who need a reliable ASIS and GLADE.  Cons: Etch users must wait
another 8 to 12 months.  Must port ASIS and GLADE from GNAT GPL to a
new compiler back-end: help required, I cannot do this by myself.

Two-stage transition to gnat-4.0 in October-December 2005, and to
gnat-4.1 as above.  Pros: more immediate support for amd64, powerpc64
and several other platforms.  More immediate availability of Ada 200y
features.  Cons: immature Ada 200y features.  The compiler may prove
less stable than 3.4.  Must port ASIS and GLADE from GNAT GPL to a new
compiler back-end: help required, I cannot do this by myself.  More
work.

Three-stage transition to gnat-3.4, then gnat-4.0, then gnat-4.1.
Pros: stable compiler.  Allows a fall-back in case the transition to
gnat-4.0 proves difficult.  More immediate availability of new
platforms and some Ada 200y features.  ASIS and GLADE are probably
easy to port from GNAT GPL Edition.  Cons: the Ada 200y features in
gnat-3.4 are already obsolete.  Still more work to do.

Any thoughts, offers to help, advice?

-- 
Ludovic Brenta.



  reply	other threads:[~2005-09-20 18:53 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-09-17 15:21 Next Ada compiler for Debian: the votes so far Ludovic Brenta
2005-09-20 18:53 ` Ludovic Brenta [this message]
2005-09-20 18:56   ` Ludovic Brenta
2005-09-20 22:38   ` Björn Persson
2005-09-21  7:37     ` Ludovic Brenta
2005-09-21  0:08   ` Dr. Adrian Wrigley
2005-09-21  4:41     ` Simon Wright
2005-09-21 12:16       ` Dr. Adrian Wrigley
2005-09-22  7:20     ` Steve Whalen
2005-09-22 11:50       ` Ludovic Brenta
2005-09-22 13:11         ` Samuel Tardieu
2005-09-22 13:44         ` Stanislav Tsekhmistroh
2005-09-22 14:34           ` Ludovic Brenta
2005-09-24 13:45             ` Frank
2005-09-26  9:39             ` Stanislav Tsekhmistroh
2005-09-22 16:54         ` Dr. Adrian Wrigley
2005-09-22 18:23           ` Ludovic Brenta
2005-09-23 11:54             ` Dr. Adrian Wrigley
2005-09-24 12:17               ` Ludovic Brenta
2005-09-24 14:40                 ` Dr. Adrian Wrigley
2005-09-22 19:41           ` Simon Wright
replies disabled

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