[Bese-devel] Problems compiling 0.2.0 with CMUCL

Jan Rychter jan at rychter.com
Fri Mar 5 23:03:04 UTC 2004


>>>>> "Marco" == Marco Baringer <mb at bese.it> writes:
 Marco> On Venerdì, mar 5, 2004, at 07:46 Europe/Rome, Jan Rychter
 Marco> wrote:
 >> Hmm. I've posted this in local.ucw.devel on nntp.common-lisp.net,
 >> but this group seems to be attracting more attention. Is the other
 >> one dead?

 Marco> yes, since there is quite a bit of overlap between ucw and bese
 Marco> (and not enough movement) i decided fairly early on to not use
 Marco> the ucw-devel mailing lists. i'll see about getting the ucw
 Marco> mailing lists removed from the nntp server.

Ah, ok, I see. Yes, I'd suggest just removing the other lists. Still, I
do find the naming confusing -- I want to use UncommonWEB (UCW), so I go
looking for... bese? Hmm.

[...]
 Marco> could you try something:

 Marco> 1) load up a fresh cmucl instance.

 Marco> 2) (asdf:oos 'asdf:load-op :arnesi)

 Marco> 3) (asdf:oos 'asdf:load-op :yaclml)

This step produces two problems:

  ; Byte Compiling Top-Level Form: 
  ; Converted PARSE.
  ; Compiling DEFUN PARSE: 
  ; 
  ; 
  ; File: /home/jwr/lisp/ucw_0.2.0/libs/yaclml/src/tal/xmls.lisp
  ; In: DEFUN TEST
  ;   (PARSE (OPEN TEST) :COMPRESS-WHITESPACE T)
  ; Warning: :COMPRESS-WHITESPACE is not a known argument keyword.
  ; 
  ; Converted TEST.
  ; Compiling DEFUN TEST: 
  ; Byte Compiling Top-Level Form: 
  ; /home/jwr/lisp/ucw_0.2.0/libs/yaclml/src/tal/xmls.x86f written.


  ; File: /home/jwr/lisp/ucw_0.2.0/libs/yaclml/src/tal/xmls.lisp
  ; In: DEFUN XMLS::TEST
  ;   (TOXML (PARSE # :COMPRESS-WHITESPACE T) :INDENT T)
  ; Warning: Undefined function XMLS:TOXML 
  ; Warning: This function is undefined:
  ;   XMLS:TOXML

... but they don't seem to have much to do with what happens later.

 Marco> 4) C-cC-k ucw/src/packages.lisp

 Marco> 5) C-cC-k ucw/src/loggers.lisp

 Marco> 6) C-cC-k ucw/src/backend/protocol.lisp

 Marco> 7) C-cC-k ucw/src/rerl/protocol.lisp

 Marco> 8) C-cC-k ucw/src/rerl/standard-application.lisp

At this point, I get:

Execution of a form compiled with errors:
 (DEFMETHOD IT.BESE.UCW::REMOVE-EXPIRED-SESSIONS
            ((IT.BESE.UCW::APP IT.BESE.UCW::APPLICATION))
            (WITH-HASH-TABLE-ITERATOR
                (IT.BESE.UCW::SESSION-ITERATOR
                 (IT.BESE.UCW::APPLICATION.SESSION-TABLE IT.BESE.UCW::APP))
              (IT.BESE.ARNESI:WHILE-BIND
               (IT.BESE.UCW::MORE? IT.BESE.UCW::SESSION-ID
                IT.BESE.UCW::SESSION)
               (IT.BESE.UCW::SESSION-ITERATOR)
               (WHEN (IT.BESE.UCW::EXPIREDP IT.BESE.UCW::SESSION)
                 (IT.BESE.UCW::EXPIRE-SESSION IT.BESE.UCW::SESSION)
                 (REMHASH IT.BESE.UCW::SESSION-ID
                          (IT.BESE.UCW::APPLICATION.SESSION-TABLE
                           IT.BESE.UCW::APP))))))
   [Condition of type KERNEL:SIMPLE-PROGRAM-ERROR]

 Marco> 9) tell me about any and every warning/error you get.

Overall, at this point I get a number of errors and warnings. I've
pasted the SLIME summary, let me know if you want more details.

-+  Warnings (4)
 |-- These functions are undefined:
 |     (SETF SESSION.ID) COOKIE INSERT-WITH-NEW-KEY
 |-- Undefined function INSERT-WITH-NEW-KEY 
 |-- Undefined function COOKIE 
 `-- Undefined function (SETF SESSION.ID) as the argument to FUNCTION
-+  Errors (2)
 |-- (during macroexpansion)
 |   Error in FDEFINITION:  the function APPLICATION.SESSION-TABLE is undefined.
 `-- (during macroexpansion)
     Error in FDEFINITION:  the function APPLICATION.SESSION-TABLE is undefined.

The "Undefined function COOKIE" occurs in defmethod service, and
INSERT-WITH-NEW-KEY is unknown in defmethod make-request-context. The
(setf session.id) problem is from make-new-session.

If I may humbly suggest one more thing. It might seem that packaging all
required libraries makes things easier for beginners -- but it
doesn't. Now that we have portable ASDF-INSTALL (many thanks to Dan
Barlow and Edi Weitz), installing things like acl-compat, xmls or UFFI
is easy. If you include these libraries, there is a whole new class of
problems: duplicate libraries, your modified versions (are they modified
or not?), etc.

I understand that it is easier for you not to deal with the problems of
various versions of libraries floating around (let's hope ASDF-INSTALL
gets support for library versions soon, so that you can easily tell
which version you have and easily upgrade to the latest version), but I
still think it makes much more sense to push libraries towards inclusion
in the ASDF-INSTALL system and work with the authors. It would go a long
way towards creating a "CL world of software" instead of fragmented
projects.

thanks,
--J.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 188 bytes
Desc: not available
URL: <https://mailman.common-lisp.net/pipermail/bese-devel/attachments/20040305/0e89f0c0/attachment.sig>


More information about the bese-devel mailing list