[Openmcl-devel] Using the Cocoa bridge in 0.14

Anders Conradi beque at telia.com
Sat Sep 20 16:19:39 PDT 2003


This is my first message to this list, although I have been lurking for 
a while. I have played with openmcl for a while now. It is a really 
nice language, that I hope to explore and learn more about. I am a lisp 
newbie. About a week ago I downloaded a 0.14 snapshot to experiment 
with the cocoa bridge. It is really an improvement to what is in 0.13. 
However I have a few questions.

Why is there define-objc-method and def-objc-class? Why not use define- 
or def- in both names? Is this following some sort of naming convention 
I don't know about?

How do I write a define-objc-method for a method with no  args? I have 
only managed to get it to work by specifying the selector as a string. 
I tried (define-objc-method ((:void 'reshape) lisp-opengl-view) ...) 
where lisp-opengl-view is a subclass of ns-opengl-view. This resulted in

 > Error in process listener(1): Car of ((:VOID 'RESHAPE) 
NS-OPENGL-VIEW) is not a function name or lambda-expression.
 > Type :POP to abort.
Type :? for other options.

I have clearly misunderstood how to do it. Could someone tell me how I 
am supposed to do it. Now I do (define-objc-method ("reshape" 
ns-opengl-view) (:void) ...), but I prefer to specify the selector and 
type in the symbolic way if possible.

How do I use (:b t) in the cocoa listener? When I try it it hangs in 
the middle of the backtrace. It works fine in the terminal I started 
openmcl from. This feels like a bug.

I belive I use 0.14-030901 but I don't remember how to check ones 
openmcl version.

Thanks for a great new language (new for me at least),
// Anders Conradi

Openmcl-devel mailing list
Openmcl-devel at clozure.com

More information about the Openmcl-devel mailing list