On 5/19/10 9:42 AM, Alessio Stalla wrote:
[…]
- I think it would be useful to move the JPanel code into base ABCL for a
basic interactive REPL. This would facilitate embedding ABCL in many tools where the core functionality is maintained in central location. This would allow Netbeans, for example, to easily include a GUI to the ABCL REPL. I would not favor this being a full IDE effort at all, but would provide the base GUI element that others could customize. At the same time, maybe we should consider removing unused parts of the org.armedbear.lisp.java.{awt,swing}.* classes? Is this something used by J that could profitably moved over?
What is the JPanel code? As part of my "Snow" GUI library, I have a basic REPL, debugger and inspector available. The REPL is pure Java and does not depend on anything but Swing/AWT, so it could be included in ABCL as-is. There's room for improvement, but it's already usable as it is if you don't expect fancy things from it. The Lisp interface to the REPL, the debugger and the inspector instead are written in Lisp and depend on the Snow DSL. I know Alan successfully ran the Snow REPL with Protege (after some bugfixing).
The org.sciencecommons.protege.lisp plugin uses snow.swing.ConsoleDocument, so I would propose we move a version of this to org.armedbear.lisp.java.swing.Console more or less as-is. Any thoughts on how you want to maintain the dependence between this and the rest of Snow?
For the rest of the classes under org.armedbear.lisp.java I would propose perhaps moving them to the examples hierarchy? It does not seem that J depends on them. Neither does Snow from what I could grep. Does anybody know of any consumers of these interfaces? And does it seem like a good idea to move them to the examples hierarchy? If we agree to such a move, I would agree to produce some amount of documentation for the use in examples.