Hello All! 2009/11/7 Jason L Tibbitts III <tibbs@xxxxxxxxxxx>: > A question occurred to me after doing a review recently about whether > Erlang source is compiled and linked together like C source or whether > the source files remain separate like, say, Python. The issue is an > Erlang package where some source files are LGPLv3+ but one is GPLv2+. I > took the safe route and assumed that the final result is GPLv3+, but > unfortunately I don't quite know enough about either Erlang or the > actual legal threshold at which the sources are considered to be > commingled. When I look at the compiled application, it looks as if > each of the .erl files gets turned into a .beam file, and those files > look to be kept separate in the final package. Well, I've got some erlang experience, so I could say something here. To illuminate the situation with Erlang and different licensing scheme for its modules, I would like to describe some basics of erlang binaries. * Every erlang binary is made from the only source file, and none of them has two or more sources of origin ("include" statement does work like similar directive in C/C++, although direct copying of other valid erlang *.erl file is not possible - so they do independent of each other). * Every binary file is self-sufficient entity and doesn't require that other modules must exist (however the proper work in this case would be highly unlikely). Erlang virtual machine doesn't use any kind of (pre)linking. Modules completely independent from each other, although may include mentioning/invocation of each other (say, ModuleA can call ModuleB:MethodB - in this case virtual machine tries to load ModuleB, execute MethodB and return the result into ModuleA (or error/exception).Think of this mechanism as of highly upgraded "man 3 exec"). * Modules can be dynamically loaded/unloaded/replaced by new ones by demand (even from/to another host via network). Feel free to ask me for other details. >From my PoV (IANAL), erlang library/program with sources, released under different licences, should be marked in spec-file as "License: LicenseA and LicenseB and LicenseC" -- With best regards, Peter Lemenkov. _______________________________________________ Fedora-legal-list mailing list Fedora-legal-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/fedora-legal-list