Am 20.01.2011 19:58, schrieb Lutger Blijdestijn:
Andrei Alexandrescu wrote:
http://www.texaslinuxfest.org/callforpapers/
One topic of interest is Open Source Programming Languages. If someone
could explain to me the various subtle nuances of what an open source
programming language is, I'll try to make a D-related submission and of
course I recommend anyone else to do the same.
Andrei
This is a matter of perspective, I think these are the possibly interesting
angles and issues for D:
- availability and development of Open Source compilers (OSI compatible
license)
(x) we have gdc and ldc (check how well current versions with D2 work before
talking about them, though ;))
- cross-platform design, this extends beyond linux but is often a concern
and goal in the Open Source world
(x) Windows, Linux, OSX, FreeBSD are supported, with gdc/ldc probably more
- development process of the language (and std lib) itself: here the
community participation is important. For D it's an interesting (and
ongoing) story to tell.
(x) agree.
Also: The std lib is under a very free license (unlike for example suns/oracles
classpath.. OpenJDK seems to be GPLed, but that still sucks for a std lib)
- usefulness and place in the open source ecosystem: I believe D has a
potential here as a serious alternative for both mono and java. Mono, the
open source implementation of .net, has loads of potential patent issues and
for this reason is not supported by some distro's. Java also has it's
issues. Positioning D as a solution to those problems (rather than an
alternative for C++ or dynamic languages) will please the crowd, for sure :)
You can never be sure with patents, as someone else in another thread already
pointed out: it's virtually impossible to write a piece of software that doesn't
infringe patents.
Of course, the situation is worse with Java (as seen in Oracle suing Google for
using a Java-derivate in Android) and Mono (you never know if Microsoft will
tolerate this forever. Even if they promised not to sue for current .net related
patents, you never know about patents applying to features in future versions of
.net).
With D at least people still would have to find patents that are infringed - and
even then the case isn't as clear as with Java/mono, where it's obvious that the
Java/.net related patents are infringed.
So yes, the point that D may cause less trouble than Java/.net can be made, but
you probably shouldn't claim that D doesn't infringe any patents, because you
can't possibly know (nobody can, there are just too many software patents to
check, even for big companies).
Interoperability with C is also important here.
Yeah, it's a killer-feature. Being able to just call C functions and link
objects produced by gcc objects (foo.o) is *really* helpful, especially in the
Linux world.
I think D (with gdc/ldc) qualifies as an "Open Source Programming Language", but
you should probably ask the texaslinuxfest guys for their personal definition.
Cheers,
- Daniel