On 09/15/2015 01:45 AM, David Kastrup wrote: > So having our binary interfaces and calling conventions and > memory/exception handling default to "like Emacs does" is not just > Lisp-friendly but is also keeping our license enforcement options more > conservative. I don't see how. Once we have a module that allows general-purpose loading of code not intended for use in Emacs (no matter how hard that initial module is to write), there will be literally nothing preventing users making arbitrary GPLv3-compatible modules that allow users to chain-load non-GPLv3-compatible code. There's no way to require that everything in the Emacs address space be licensed under the GPL. And that's a good thing, because equating sharing an address space with a "derivative work" boundary is ridiculous. Even if Emacs were to look for some I_LOAD_ONLY_GPLV3=1 export from loaded modules, the GPL does not prohibit a module simply lying. The GPLv3 does not require the implementation of technical license enforcement mechanisms. (If it did, it would violate freedom 0.)