News for hackers. Stuff that matters.
Re:Gnat 2021 GPL Community Edition Ada 202x compiler released by eggy on Friday May 28, 2021 @08:32AM (#27314593)
I am learning SPARK2014 and it is this confusion around the GPL that gives me pause in fully committing to this direction or any other GPL-licensed software, mainly due to not fully understanding how I can use the Gnat Ada 202x compiler. I am learning Zig, and it is MIT (expat) licensed, which I feel more comfortable in accepting. Rust is the same (dual-licensed MIT/Apache V2), and I think given some people comparing Ada to Rust for high-integrity software are going to gravitate to Rust instead of Ada. SPARK2014, a subset of Ada, is an amazing language for these endeavors.
Re:Gnat 2021 GPL Community Edition Ada 202x compiler released by tobiasu on Friday May 28, 2021 @08:50AM (#27314764)
You can build gnat and gnatprove yourself, including runtime exception.

This is a bit painful (intentionally so) but it can be done.

Re:Gnat 2021 GPL Community Edition Ada 202x compiler released by e12e on Friday May 28, 2021 @09:33AM (#27315113)
> You can build gnat and gnatprove yourself, including runtime exception.

How does that work? Are the binaries from Ada core (not FSF) intentionally distributed under GPL while the source for standardlib/run-time come with LGPL/run-time exceptions?

It was my understanding that the Ada core distribution is full GPL only, and the FSF one (lagging a few versions) was licensed more like gcc?

Re:Gnat 2021 GPL Community Edition Ada 202x compiler released by my123 on Friday May 28, 2021 @10:08AM (#27315490)
> It was my understanding that the Ada core distribution is full GPL only, and the FSF one (lagging a few versions) was licensed more like gcc?

Yes that's the case.

Re:Gnat 2021 GPL Community Edition Ada 202x compiler released by eggy on Friday May 28, 2021 @12:20PM (#27317290)
I am more of an end-user here trying to use SPARK2014 for applications, not doing any unnecessary software engineering or builds outside of using SPARK2014 and a compiler. It is this type of thing that makes it a bad choice for someone like me who doesn't have the time and sometimes the wherewithal to build my own compiler. Sure, a simple build of source without licensing restrictions, maybe, but not much above just using the PL to get a job done. This is why I will never give up C and the tools around it, well, maybe Zig or Rust, which I am playing with, but they are nowhere near SPARK2014/Ada for all that you get with them and the Gnat compiler. I was introduced to SPARK2014 with the book, "Building High Integrity Applications with Spark". I also read a fantastic book, "Analysable Real-Time Systems: Programmed in Ada" that put me on this vector. Great stuff and timely.
Re:Gnat 2021 GPL Community Edition Ada 202x compiler released by onox on Friday May 28, 2021 @12:37PM (#27317516)
SPARK2014 is just a tool (gnatprove), which you don't distribute to others (would be rather pointless). Compiling can be done with gnat from your Linux distro, which usually has the Runtime Library Exception.
Re:Gnat 2021 GPL Community Edition Ada 202x compiler released by eggy on Friday May 28, 2021 @06:51PM (#27321445)
Is the compiling part "a bit painful" as @tobiasu comments above? Because that is what I am trying to avoid.
Re:Gnat 2021 GPL Community Edition Ada 202x compiler released by andi999 on Friday May 28, 2021 @10:36AM (#27315812)
Some source on this?
Re:Gnat 2021 GPL Community Edition Ada 202x compiler released by tobiasu on Friday May 28, 2021 @11:02AM (#27316194)
this is unclear to me, what source do you need?
Re:Gnat 2021 GPL Community Edition Ada 202x compiler released by andi999 on Friday May 28, 2021 @11:05AM (#27316250)
That if you build ada yourself your binaries later either have the runtime exception or that they do not need it.
Re:Gnat 2021 GPL Community Edition Ada 202x compiler released by tobiasu on Friday May 28, 2021 @11:25AM (#27316504)
Take as an example the gnat.sockets package from upstream gcc:

https://github.com/gcc-mirror/gcc/blob/master/gcc/ada/libgna...

Compare with the same file from the GNAT 2021 CE install:

GNAT/2021/lib/gcc/x86_64-pc-linux-gnu/10.3.1/rts-native/adainclude/g-socket.ads

you will find there are a bunch of blank lines where the runtime exception was.

Re:Gnat 2021 GPL Community Edition Ada 202x compiler released by e12e on Friday May 28, 2021 @12:39PM (#27317539)
But if you're going to use the FSF version, why not use fsf/distro binaries? Getting the source from Ada core still leaves you without the runtime exception? (Ada core is upstream/newer, fsf is downstream, lagging a bit behind Ada core(?)).
Re:Gnat 2021 GPL Community Edition Ada 202x compiler released by andi999 on Friday May 28, 2021 @01:11PM (#27317980)
I might be ignorant, but you actually need the exception, otherwise it would be gpl, isnt it.