Python uses .pyc, for what it's worth. Evan
On 10/18/07, Charles Oliver Nutter <[EMAIL PROTECTED]> wrote: > So yeah, the compiler's done, it can compile ahead-of-time to binary > files you can load and run and all that. Currently the extension for > those files is .class, but that's started to bother me a bit. > > Here's the deal...it's not "really" a Java class file. You can't load > the class it contains and instantiate it normally and start calling > methods. It's just a bag of methods and runtime junk for the compiled > code. There will be an eventual compiler that can produce things more > like normal class files, but this isn't it. > > I'm also planning a modification to the load sequence that will allow > loading these compiled format files directly out of load path, rather > than requiring classpath changes. So if you compile some/dir/foo.rb to > some/dir/foo.class, the load sequence will see the compiled version and > load that. > > Because the loading of these compiled files requires a JRuby runtime and > extra logic to launch them correctly, I'm starting to think that naming > them .class isn't appropriate. They're really a custom format/layout for > JRuby that just happens to use the Java class file format and bytecode. > Beyond that, they're JRuby-specific. > > So what would you all say to having the compiler produce a different > extension, like .rbj for "ruby compiled to Java bytecode"? I think it > better reflects the actual format and the way the files should be used, > and it would basically eliminate the chance of someone confusing this > for a normal Java class and intentionally (or accidentally) using it in > their own Java code. > > Thoughts? > > - Charlie > > --------------------------------------------------------------------- > To unsubscribe from this list please visit: > > http://xircles.codehaus.org/manage_email > > -- Evan Weaver Cloudburst, LLC --------------------------------------------------------------------- To unsubscribe from this list please visit: http://xircles.codehaus.org/manage_email
