28.05.2012, 16:22, "Anton Vodonosov" avodonosov@yandex.ru:
If independent version of new-class is not ready, probably it's possible to deliver runtime-class a a contrib [...]
I've checked the ABCL sources and see that runtime-class.lisp is now included into ABCL. So we don't even need to create a contrib for it.
Could anyone help me understand the problem with new-class, why removing it? Namely, when the asm.jar will be needed,
What I understand now:
1. abcl-jfli function jrc calls java:jnew-runtime-class. 2. java:jnew-runtime-class needs asm.jar.
Basically, my question is when the asm.jar is needed, during load time o fabcl-jfli or only at run time, when we call the jfli:jrc?
I see
(export 'jnew-runtime-class "JAVA") (autoload 'jnew-runtime-class "runtime-class")
that runtime-class.lisp is present in autoloads.lisp, but I do not clearly understand how autoloads work, that's why I ask this question.
Anyway, if the dependency on asm.jar is a load-time dependency (in that case it's a real problem for the users who don't need new class functionality and don't want to carry asm.jar), we can solve it by changing the calls
(java:jnew-runtime-class other args)
to
(funcall (read-from-string "java:jnew-runtime-class") other args).
This will resolve compile/load time dependencies for sure.
Best regards, - Anton