Getting Java Class objects, and JSS

John Pallister john at synchromesh.com
Wed Jul 8 11:42:22 UTC 2015


Hi Mark,

Thanks for pointing out getClass(), I should've thought of that myself...

And thanks for the JSS information, I'll have a look into that.

On 8 July 2015 at 08:27, Mark Evenson <evenson at panix.com> wrote:

>
> > On 07 Jul 2015, at 22:24, John Pallister <john at synchromesh.com> wrote:
>
> […]
>
> > Some of the tutorials have code like:
> >
> >   context.addServlet(HelloServlet.class, "/");
> >
> > Is it possible to get Class objects for Java classes I've made with
> JNEW-RUNTIME-CLASS (or indeed for any other Java class)?
>
> Since all Java references to non-primitive types descend from
> java.lang.Object,
> one may always get a reference to the class object by [calling the
> “getClass()”
> method][1].
>
> [1]:
> http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#getClass--
>
> > I've been using "raw" JCLASS & JMETHOD etc. calls to experience just how
> > painful that really is, but I'm apprehensive about using JSS and paying
> the
> > runtime dynamic dispatch penalty, given that on GAE time is money.
> Something
> > more like a SLIME plug-in that looked up & cached classes, methods &
> fields at
> > editing time (perhaps also parsing Java expressions) and generated
> "statically
> > typed" code would be nice (possibly using code from e.g. JDEE and/or
> CEDET) -
> > has anyone else thought about this?
>
>
> I wouldn’t necessarily be afraid of the “penalty" for using JSS, or at
> least, I
> might benchmark the difference in performance before shying away from JSS
> at
> the outset.
>
> JSS [already creates a cache of all classes that on the classpath][2].
> JSS:JAVA-CLASS-METHOD-NAMES provides a listing of all methods of a class,
> which
> is not currently cached, but could be.  Extending this to java fields
> would be
> useful.  I would welcome patches to JSS which extends these introspection
> facilities as the basis for the tooling you wish to build.
>
> [2]: http://abcl.org/trac/browser/trunk/abcl/contrib/jss/invoke.lisp#L299
> [3]: http://abcl.org/trac/browser/trunk/abcl/contrib/jss/invoke.lisp#L469
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/armedbear-devel/attachments/20150708/65a338e5/attachment.html>


More information about the armedbear-devel mailing list