Finally I was able to run my Ceylon modules in Java9!! So what I have is that I generate module-info.class for every Ceylon distrib module (the bootstrap modules written in Java[1]), I made the Ceylon JVM compiler generate module-info.class for every Ceylon module, and with a few tweaks here and there I can run Ceylon modules as Java modules from the java command-line, using the Jigsaw runtime, as an alternative to the JBoss Modules runtime.
Pretty nice. Of course I still have to unhack a few things and polish, but overall it's already quite a milestone. I was even able to use the Ceylon metamodel (which relies heavily on Java reflection), although I suspect it will fail across module boundaries because Jigsaw checks are more strict than Ceylon metamodel checks (ironic considering our compile-time checks are stricter than Java9's javac modularity checks, but that's OK). I'm a bit frustrated that you guys renamed the javax.xml module to java.xml because it will require us to magic that change away for users of Java 7/8 that run on Java 9, but I can't blame you for you, it's our own fault for supporting Java modules since Java 7. Paul Sandoz warned me… ;) So where again should I ask questions about the spec? It doesn't seem like the observers list is the right place. Thanks a lot for your help getting this done, guys. [1] ATM I can compile them with Java 9 but not as modules, I generate the module-info.class from the JBoss Modules descriptor. I can generate a module-info.java from it and then make javac compile them as modules, which I'll do in the future.