[mcclim-devel] CLX backend or OpenGL backend with ClozureCL on OS X (also posted on c.l.l)

rm at tuxteam.de rm at tuxteam.de
Mon Dec 27 15:47:36 UTC 2010


On Mon, Dec 27, 2010 at 08:59:40AM -0600, James Ashley wrote:
> On Mon, Dec 27, 2010 at 5:44 AM,  <rm at tuxteam.de> wrote:
> > On Mon, Dec 27, 2010 at 11:36:24AM +0100, Frank G?nninger wrote:
> >> Hi all:
> >> Using Quicklisp I loaded the required packages:
> >>
> >
> > Why do you perform such a selective load? So far I had better luck just
> > doing a:
> >
> >  (ql:quickload "mcclim")
> >
> >
> >> ;;; OK, so far. Now let's define CLX as the backend...
> >>
> >> ? (setq clim:*default-server-path* '(:clx))
> >>
> >> (:CLX)
> >
> > Without (ql:quickload "clim-clx") this won't work. CLX by itself only
> > provides the API to communicate with a X server, the X backend is
> > defined inclim-cxl.
> 
> So is this a bug in the ASD (not specifying some required package), a
> limitation of ASDF (can't specify that package x depends on variable
> y), or just a matter of understanding the tools (load the package you
> want, don't mess around with the dependencies)?

I'd say it's a missunderstanding: CLIM is an abstract user interface API
that can (and does) run on different backends (X/Gtk/Genera/Windows/MAc
Toolbox ...). Clim for shure does need _one_ backend loaded to be
operable, but how to express this in ASDF? Maybe (find-port ...)
should throw an error for an unloaded backend?

Looking at mcclim's code for find-port, blindly funcalling the return
value of  (get (first server-path) :server-path-parser) looks like an
error to me.
 
> Where's the best place to document this so it doesn't bite someone
> else in the future?
> 
> (cliki seems like the most obvious to me, but what do I know?)

McClim's Wiki?

Cheers, RalfD
 
> Respectfully,
> James
> 
> 
> > HTH Ralf Mattes
> >
> >> ;;; Following the McCLIM's Chapter 3 "The First Application" I
> >> ;;; tried the sample app:
> >>
> >> ?  (app::app-main)
> >>
> >> > Error: NIL is not of type (OR SYMBOL FUNCTION), and can't be FUNCALLed or APPLYed
> >> > While executing: CLIM:FIND-PORT, in process Listener(6).
> >> > Type cmd-. to abort, cmd-\ for a list of available restarts.
> >> > Type :? for other options.
> >>
> >> ;;; Hmpf ?!? Ok, CLX seems to be the problem. Backtrace shows:
> >>
> >> 1 > :b
> >> *(161D78B8) : 0 (FIND-PORT :SERVER-PATH (:CLX)) 265
> >>  (161D7930) : 1 (FIND-FRAME-MANAGER) 509
> >>  (161D7968) : 2 (FUNCALL #'#<#<STANDARD-METHOD CLIM:RUN-FRAME-TOP-LEVEL :AROUND (CLIM:APPLICATION-FRAME)>> #<APP::SUPERAPP #x302003283C0D>) 405
> >>  (161D7A40) : 3 (%%STANDARD-COMBINED-METHOD-DCODE (#<STANDARD-METHOD CLIM:RUN-FRAME-TOP-LEVEL :AROUND #> #<STANDARD-METHOD CLIM:RUN-FRAME-TOP-LEVEL #>) 46378838) 693
> >>  (161D7AC0) : 4 (CALL-CHECK-REGS APP:APP-MAIN) 221
> >
> >>  (161D7AF8) : 5 (TOPLEVEL-EVAL (APP:APP-MAIN) NIL) 701
> >>  (161D7B98) : 6 (READ-LOOP :INPUT-STREAM #<SYNONYM-STREAM to *TERMINAL-IO* #x302000B013BD> :OUTPUT-STREAM #<SYNONYM-STREAM to *TERMINAL-IO* #x302000B0125D> :BREAK-LEVEL 0 :PROMPT-FUNCTION #<Compiled-function (:INTERNAL CCL::READ-LOOP) (Non-Global)  #x30000058146F>) 2269
> >>  (161D7DF0) : 7 (TOPLEVEL-LOOP) 101
> >>  (161D7E18) : 8 (FUNCALL #'#<(:INTERNAL CCL::MAKE-MCL-LISTENER-PROCESS)>) 741
> >>  (161D7EB8) : 9 (RUN-PROCESS-INITIAL-FORM #<COCOA-LISTENER-PROCESS Listener(6) [Active] #x302000B63D7D> (#<COMPILED-LEXICAL-CLOSURE # #x302000B6372F>)) 677
> >>  (161D7F48) : 10 (FUNCALL #'#<(:INTERNAL (CCL::%PROCESS-PRESET-INTERNAL (PROCESS)))> #<COCOA-LISTENER-PROCESS Listener(6) [Active] #x302000B63D7D> (#<COMPILED-LEXICAL-CLOSURE # #x302000B6372F>)) 389
> >>  (161D7F98) : 11 (FUNCALL #'#<(:INTERNAL CCL::THREAD-MAKE-STARTUP-FUNCTION)>) 301
> >> 1 >
> >>
> >> I'd have to dig deeper but maybe there's someone on here you already can point in the right direction ?!?
> >>
> >> THX!
> >>
> >> Best,
> >>   Frank
> >>
> >>
> >>
> >> _______________________________________________
> >> mcclim-devel mailing list
> >> mcclim-devel at common-lisp.net
> >> http://common-lisp.net/cgi-bin/mailman/listinfo/mcclim-devel
> >
> > _______________________________________________
> > mcclim-devel mailing list
> > mcclim-devel at common-lisp.net
> > http://common-lisp.net/cgi-bin/mailman/listinfo/mcclim-devel
> >
> 
> _______________________________________________
> mcclim-devel mailing list
> mcclim-devel at common-lisp.net
> http://common-lisp.net/cgi-bin/mailman/listinfo/mcclim-devel




More information about the mcclim-devel mailing list