How does the GPL work in regards to languages like Dart which compile to other languages?
- by Peter-W
Google's Dart language is not supported by any Web Browsers other than a special build of Chromium known as Dartium. To use Dart for production code you need to run it through a Dart-JavaScript compiler/translator and then use the outputted JavaScript in your web application.
Because JavaScript is an interpreted language everyone who receives the "binary"(Aka, the .js file) has also received the source code.
Now, the GNU General Public License v3.0 states that:
"The “source code” for a work means the preferred form of the work for making modifications to it."
Which would imply that the original Dart code in addition to the JavaScript code must also be provided to the end user. Does this mean that any web applications written in Dart must also provide the original Dart code to all visitors of their website even though a copy of the source code has already been provided in a human readable/writable/modifiable form?