Is there a way to create a Java class with ABCL (that extends another class)?
Can you write a Java class with ABCL?
1.3k Views Asked by compman At
2
There are 2 best solutions below
Related Questions in JAVA
- Using package.json config object variables under windows
- Package.json not found error when updating using npm-check-updates
- Why do we need to use package.json?
- Pointing package.json to a specific React commit installs react-tools (not react)
- Node.js package.json script code uses local or global libraries?
- What to do to mix coffescript and typescript files in the same nodejs project?
- How to specify browserify extensions in package.json?
- npm: How to just run postinstall?
- How auto package installation of Grunt, Karma, package.json in one process
- Does package.json file require a unique name per site when used in local dev?
Related Questions in JVM
- Using package.json config object variables under windows
- Package.json not found error when updating using npm-check-updates
- Why do we need to use package.json?
- Pointing package.json to a specific React commit installs react-tools (not react)
- Node.js package.json script code uses local or global libraries?
- What to do to mix coffescript and typescript files in the same nodejs project?
- How to specify browserify extensions in package.json?
- npm: How to just run postinstall?
- How auto package installation of Grunt, Karma, package.json in one process
- Does package.json file require a unique name per site when used in local dev?
Related Questions in COMMON-LISP
- Using package.json config object variables under windows
- Package.json not found error when updating using npm-check-updates
- Why do we need to use package.json?
- Pointing package.json to a specific React commit installs react-tools (not react)
- Node.js package.json script code uses local or global libraries?
- What to do to mix coffescript and typescript files in the same nodejs project?
- How to specify browserify extensions in package.json?
- npm: How to just run postinstall?
- How auto package installation of Grunt, Karma, package.json in one process
- Does package.json file require a unique name per site when used in local dev?
Related Questions in ABCL
- Using package.json config object variables under windows
- Package.json not found error when updating using npm-check-updates
- Why do we need to use package.json?
- Pointing package.json to a specific React commit installs react-tools (not react)
- Node.js package.json script code uses local or global libraries?
- What to do to mix coffescript and typescript files in the same nodejs project?
- How to specify browserify extensions in package.json?
- npm: How to just run postinstall?
- How auto package installation of Grunt, Karma, package.json in one process
- Does package.json file require a unique name per site when used in local dev?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
One can write directly write a Java class as JVM bytecode via the functions in the JVM package which is the code that ABCL's own compiler uses. As of abcl-0.25.0, there is unsupported code for a JAVA:JNEW-RUNTIME-CLASS method which allows one to dynamically write a Java class that calls Lisp methods for execution. The code uses classes from the ObjectWeb ASM BCEL which must be present in the JVM classpath. Exactly which version of the ASM BCEL library is needed, and whether it works with the current ABCL is untested. ABCL issue #153 tracks the work necessary to support this in the contemporary ABCL implementation.
But if one has an existing Java interface for which one would like to use Lisp based methods to provide an implementation, the process is considerably simpler (and supported!)
The relevant function is JAVA:JINTERFACE-IMPLEMENTATION whose use is demonstrated in the BankAccount example.
For the Java interface defined as
The following Lisp code creates a usable Java Proxy in the current JVM:
To get a reference to this implementation from Java, one uses the code in BankMainAccount.java