From gwking at metabang.com Fri Feb 2 00:37:38 2007 From: gwking at metabang.com (Gary King) Date: Thu, 1 Feb 2007 19:37:38 -0500 Subject: [log5-devel] Log5 User's Guide Message-ID: There is a new user's guide on the log5 website http://common-lisp.net/project/log5/user-guide.html enjoy (and please send feedback back). thanks, -- Gary Warren King, metabang.com Cell: (413) 885 9127 Fax: (206) 338-4052 gwkkwg on Skype * garethsan on AIM From ectospheno at gmail.com Fri Feb 2 22:51:07 2007 From: ectospheno at gmail.com (Michael Price) Date: Fri, 2 Feb 2007 17:51:07 -0500 Subject: [log5-devel] can't follow the tutorial Message-ID: I noticed the log5 tutorial was up so I decided to play around a bit. Can anyone explain what the problem is in the session below? It appears I'm simply entering things in almost verbatim from the tutorial yet it isn't working. Am I just dense? ; SLIME 2007-02-02 CL-USER> (asdf:operate 'asdf:load-op :log5) ; loading system definition from ; /Users/michael/usr/share/common-lisp/systems/log5.asd into ; # ; registering # as LOG5 STYLE-WARNING: implicitly creating new generic function UPDATE-ACTIVE-CATEGORIES STYLE-WARNING: implicitly creating new generic function CREATE-HANDLE-MESSAGE-CONTEXT STYLE-WARNING: implicitly creating new generic function START-HANDLING STYLE-WARNING: implicitly creating new generic function FINISH-HANDLING STYLE-WARNING: implicitly creating new generic function SEPARATE-PROPERTIES STYLE-WARNING: implicitly creating new generic function CLOSE-SENDER STYLE-WARNING: implicitly creating new generic function HANDLE-OUTPUT NIL CL-USER> (use-package :log5) T CL-USER> (start-sender warnings-and-worse (stream-sender :location *error-output*) :category-spec (warn+) :output-spec (time message context)) ; in: LAMBDA NIL ; (OR ERROR FATAL) ; ==> ; (LET ((#:G0 ERROR)) ; (IF #:G0 #:G0 (OR FATAL))) ; ; caught WARNING: ; undefined variable: ERROR ; --> LET IF ; ==> ; (OR FATAL) ; ; caught WARNING: ; undefined variable: FATAL ; (LET ((#:G1650 WARN)) ; (IF #:G1650 #:G1650 (OR (OR ERROR FATAL)))) ; ; caught WARNING: ; undefined variable: WARN ; ; caught WARNING: ; These variables are undefined: ; ERROR FATAL WARN ; ; compilation unit finished ; caught 4 WARNING conditions ; in: LAMBDA NIL ; (OR ERROR FATAL) ; ==> ; (LET ((#:G0 ERROR)) ; (IF #:G0 #:G0 (OR FATAL))) ; ; caught WARNING: ; undefined variable: ERROR ; --> LET IF ; ==> ; (OR FATAL) ; ; caught WARNING: ; undefined variable: FATAL ; (LET ((#:G1651 WARN)) ; (IF #:G1651 #:G1651 (OR (OR ERROR FATAL)))) ; ; caught WARNING: ; undefined variable: WARN ; ; caught WARNING: ; These variables are undefined: ; ERROR FATAL WARN ; ; compilation unit finished ; caught 4 WARNING conditions ; in: LAMBDA NIL ; (OR ERROR FATAL) ; ==> ; (LET ((#:G0 ERROR)) ; (IF #:G0 #:G0 (OR FATAL))) ; ; caught WARNING: ; undefined variable: ERROR ; --> LET IF ; ==> ; (OR FATAL) ; ; caught WARNING: ; undefined variable: FATAL ; (LET ((#:G1652 WARN)) ; (IF #:G1652 #:G1652 (OR (OR ERROR FATAL)))) ; ; caught WARNING: ; undefined variable: WARN ; ; caught WARNING: ; These variables are undefined: ; ERROR FATAL WARN ; ; compilation unit finished ; caught 4 WARNING conditions ; in: LAMBDA NIL ; (OR ERROR FATAL) ; ==> ; (LET ((#:G0 ERROR)) ; (IF #:G0 #:G0 (OR FATAL))) ; ; caught WARNING: ; undefined variable: ERROR ; --> LET IF ; ==> ; (OR FATAL) ; ; caught WARNING: ; undefined variable: FATAL ; (LET ((#:G1653 WARN)) ; (IF #:G1653 #:G1653 (OR (OR ERROR FATAL)))) ; ; caught WARNING: ; undefined variable: WARN ; ; caught WARNING: ; These variables are undefined: ; ERROR FATAL WARN ; ; compilation unit finished ; caught 4 WARNING conditions ; in: LAMBDA NIL ; (OR ERROR FATAL) ; ==> ; (LET ((#:G0 ERROR)) ; (IF #:G0 #:G0 (OR FATAL))) ; ; caught WARNING: ; undefined variable: ERROR ; --> LET IF ; ==> ; (OR FATAL) ; ; caught WARNING: ; undefined variable: FATAL ; (LET ((#:G1654 WARN)) ; (IF #:G1654 #:G1654 (OR (OR ERROR FATAL)))) ; ; caught WARNING: ; undefined variable: WARN ; ; caught WARNING: ; These variables are undefined: ; ERROR FATAL WARN ; ; compilation unit finished ; caught 4 WARNING conditions ; in: LAMBDA NIL ; (OR ERROR FATAL) ; ==> ; (LET ((#:G0 ERROR)) ; (IF #:G0 #:G0 (OR FATAL))) ; ; caught WARNING: ; undefined variable: ERROR ; --> LET IF ; ==> ; (OR FATAL) ; ; caught WARNING: ; undefined variable: FATAL ; (LET ((#:G1655 WARN)) ; (IF #:G1655 #:G1655 (OR (OR ERROR FATAL)))) ; ; caught WARNING: ; undefined variable: WARN ; ; caught WARNING: ; These variables are undefined: ; ERROR FATAL WARN ; ; compilation unit finished ; caught 4 WARNING conditions ; in: LAMBDA NIL ; (OR ERROR FATAL) ; ==> ; (LET ((#:G0 ERROR)) ; (IF #:G0 #:G0 (OR FATAL))) ; ; caught WARNING: ; undefined variable: ERROR ; --> LET IF ; ==> ; (OR FATAL) ; ; caught WARNING: ; undefined variable: FATAL ; (LET ((#:G1656 WARN)) ; (IF #:G1656 #:G1656 (OR (OR ERROR FATAL)))) ; ; caught WARNING: ; undefined variable: WARN ; ; caught WARNING: ; These variables are undefined: ; ERROR FATAL WARN ; ; compilation unit finished ; caught 4 WARNING conditions ; in: LAMBDA NIL ; (OR ERROR FATAL) ; ==> ; (LET ((#:G0 ERROR)) ; (IF #:G0 #:G0 (OR FATAL))) ; ; caught WARNING: ; undefined variable: ERROR ; --> LET IF ; ==> ; (OR FATAL) ; ; caught WARNING: ; undefined variable: FATAL ; (LET ((#:G1657 WARN)) ; (IF #:G1657 #:G1657 (OR (OR ERROR FATAL)))) ; ; caught WARNING: ; undefined variable: WARN ; ; caught WARNING: ; These variables are undefined: ; ERROR FATAL WARN ; ; compilation unit finished ; caught 4 WARNING conditions ; in: LAMBDA NIL ; (OR ERROR FATAL) ; ==> ; (LET ((#:G0 ERROR)) ; (IF #:G0 #:G0 (OR FATAL))) ; ; caught WARNING: ; undefined variable: ERROR ; --> LET IF ; ==> ; (OR FATAL) ; ; caught WARNING: ; undefined variable: FATAL ; (LET ((#:G1658 WARN)) ; (IF #:G1658 #:G1658 (OR (OR ERROR FATAL)))) ; ; caught WARNING: ; undefined variable: WARN ; ; caught WARNING: ; These variables are undefined: ; ERROR FATAL WARN ; ; compilation unit finished ; caught 4 WARNING conditions ; in: LAMBDA NIL ; (OR ERROR FATAL) ; ==> ; (LET ((#:G0 ERROR)) ; (IF #:G0 #:G0 (OR FATAL))) ; ; caught WARNING: ; undefined variable: ERROR ; --> LET IF ; ==> ; (OR FATAL) ; ; caught WARNING: ; undefined variable: FATAL ; (LET ((#:G1659 WARN)) ; (IF #:G1659 #:G1659 (OR (OR ERROR FATAL)))) ; ; caught WARNING: ; undefined variable: WARN ; ; caught WARNING: ; These variables are undefined: ; ERROR FATAL WARN ; ; compilation unit finished ; caught 4 WARNING conditions ; in: LAMBDA NIL ; (OR ERROR FATAL) ; ==> ; (LET ((#:G0 ERROR)) ; (IF #:G0 #:G0 (OR FATAL))) ; ; caught WARNING: ; undefined variable: ERROR ; --> LET IF ; ==> ; (OR FATAL) ; ; caught WARNING: ; undefined variable: FATAL ; (LET ((#:G1660 WARN)) ; (IF #:G1660 #:G1660 (OR (OR ERROR FATAL)))) ; ; caught WARNING: ; undefined variable: WARN ; ; caught WARNING: ; These variables are undefined: ; ERROR FATAL WARN ; ; compilation unit finished ; caught 4 WARNING conditions # CL-USER> (log-for (warn) "This is a warning.") ; in: LAMBDA NIL ; (LOAD-TIME-VALUE (LOG5::UPDATE-CATEGORY-SPEC NIL '(WARN)) :READ-ONLY-P T) ; ; caught ERROR: ; error while parsing arguments to special form LOAD-TIME-VALUE: ; invalid number of elements in ; ((LOG5::UPDATE-CATEGORY-SPEC NIL '(WARN)) :READ-ONLY-P T) ; to satisfy lambda list ; (SB-KERNEL:FORM &OPTIONAL SB-C::READ-ONLY-P): ; between 1 and 2 expected, but 3 found ; (LET ((CATEGORY ; (LOAD-TIME-VALUE (LOG5::UPDATE-CATEGORY-SPEC NIL '#) :READ-ONLY-P T))) ; (LOG5::HANDLE-MESSAGE (LOG5::CATEGORY-ID CATEGORY) "This is a warning.")) ; ; note: deleting unreachable code ; ; note: deleting unreachable code ; ; compilation unit finished ; caught 1 ERROR condition ; printed 2 notes ; Evaluation aborted CL-USER> From gwking at metabang.com Sat Feb 3 00:16:07 2007 From: gwking at metabang.com (Gary King) Date: Fri, 2 Feb 2007 19:16:07 -0500 Subject: [log5-devel] can't follow the tutorial In-Reply-To: References: Message-ID: <0604D521-B179-4309-8847-174BDF8FDB25@metabang.com> Hi Michael, I get the same thing in SBCL. I'll need to look at it at bit and see what I missed. On Feb 2, 2007, at 5:51 PM, Michael Price wrote: > I noticed the log5 tutorial was up so I decided to play around a bit. > Can anyone explain what the problem is in the session below? It > appears I'm simply entering things in almost verbatim from the > tutorial yet it isn't working. Am I just dense? thanks for the report. -- Gary Warren King, metabang.com Cell: (413) 885 9127 Fax: (206) 338-4052 gwkkwg on Skype * garethsan on AIM From ectospheno at gmail.com Mon Feb 5 00:11:11 2007 From: ectospheno at gmail.com (Michael Price) Date: Sun, 4 Feb 2007 19:11:11 -0500 Subject: [log5-devel] seems a bit slow, uses a lot of memory Message-ID: Here is a copy of some experimenting I did tonight with log5 using sbcl on an iBook. The times seem a bit slow and the memory use is disturbing. Michael ; SLIME 2007-02-04 CL-USER> (require :log5) NIL CL-USER> (use-package :log5) T CL-USER> (start-sender my-test-sender (stream-sender :location *standard-output*) :category-spec (warn+) :output-spec (time message)) # CL-USER> (log-for (warn) "This is a warning.") 3379622724 "This is a warning." NIL CL-USER> (time (log-for (warn) "This is a warning.")) 3379622770 "This is a warning." Evaluation took: 0.059 seconds of real time 0.04454 seconds of user run time 0.005597 seconds of system run time 0 calls to %EVAL 0 page faults and 712,184 bytes consed. NIL CL-USER> (log-for (info) "This is some info.") NIL CL-USER> (time (log-for (info) "This is some info.")) Evaluation took: 0.118 seconds of real time 0.0883 seconds of user run time 0.010775 seconds of system run time 0 calls to %EVAL 0 page faults and 1,412,120 bytes consed. NIL CL-USER> (time (log-for (info) "This is some info.")) Evaluation took: 0.321 seconds of real time 0.254798 seconds of user run time 0.045183 seconds of system run time [Run times include 0.201 seconds GC run time.] 0 calls to %EVAL 0 page faults and 1,376,048 bytes consed. NIL CL-USER> (time (log-for (info) "This is some info.")) Evaluation took: 0.12 seconds of real time 0.085579 seconds of user run time 0.018949 seconds of system run time 0 calls to %EVAL 0 page faults and 1,387,352 bytes consed. NIL CL-USER> (time (log-for (info) "This is some info.")) Evaluation took: 0.121 seconds of real time 0.086583 seconds of user run time 0.020286 seconds of system run time 0 calls to %EVAL 0 page faults and 1,374,936 bytes consed. NIL CL-USER> (defcategory foo) # CL-USER> (defcategory bar) # CL-USER> (defcategory foobar (and foo bar)) # (AND FOO BAR)> CL-USER> (start-sender my-test-sender2 (stream-sender :location *standard-output*) :category-spec (foobar) :output-spec (time message)) # CL-USER> (log-for (foobar) "FOOBAR!") 3379622899 "FOOBAR!" NIL CL-USER> (time (log-for (foobar) "FOOBAR!")) 3379622909 "FOOBAR!" Evaluation took: 0.367 seconds of real time 0.253236 seconds of user run time 0.031588 seconds of system run time 0 calls to %EVAL 0 page faults and 4,804,736 bytes consed. NIL CL-USER> (time (log-for (foobar) "FOOBAR!")) 3379622912 "FOOBAR!" Evaluation took: 0.379 seconds of real time 0.277797 seconds of user run time 0.03945 seconds of system run time [Run times include 0.049 seconds GC run time.] 0 calls to %EVAL 0 page faults and 4,939,712 bytes consed. NIL CL-USER> From gwking at metabang.com Mon Feb 5 21:14:40 2007 From: gwking at metabang.com (Gary King) Date: Mon, 5 Feb 2007 16:14:40 -0500 Subject: [log5-devel] seems a bit slow, uses a lot of memory In-Reply-To: References: Message-ID: <65875989-FC6F-45E8-9B9C-6C3A78A746B8@metabang.com> Hi Michael, Thanks for this data; I (think I) designed log5 so that it can be fast but I haven't done anything to push on efficiency yet. I'll try to look at this sooner rather than later. On Feb 4, 2007, at 7:11 PM, Michael Price wrote: > Here is a copy of some experimenting I did tonight with log5 using > sbcl on an iBook. The times seem a bit slow and the memory use is > disturbing. > > Michael > > ; SLIME 2007-02-04 > CL-USER> (require :log5) > NIL > CL-USER> (use-package :log5) > T > CL-USER> (start-sender my-test-sender > (stream-sender :location *standard-output*) > :category-spec (warn+) > :output-spec (time message)) > # > CL-USER> (log-for (warn) "This is a warning.") > 3379622724 "This is a warning." > NIL > CL-USER> (time (log-for (warn) "This is a warning.")) > 3379622770 "This is a warning." > Evaluation took: > 0.059 seconds of real time > 0.04454 seconds of user run time > 0.005597 seconds of system run time > 0 calls to %EVAL > 0 page faults and > 712,184 bytes consed. > NIL > CL-USER> (log-for (info) "This is some info.") > NIL > CL-USER> (time (log-for (info) "This is some info.")) > Evaluation took: > 0.118 seconds of real time > 0.0883 seconds of user run time > 0.010775 seconds of system run time > 0 calls to %EVAL > 0 page faults and > 1,412,120 bytes consed. > NIL > CL-USER> (time (log-for (info) "This is some info.")) > Evaluation took: > 0.321 seconds of real time > 0.254798 seconds of user run time > 0.045183 seconds of system run time > [Run times include 0.201 seconds GC run time.] > 0 calls to %EVAL > 0 page faults and > 1,376,048 bytes consed. > NIL > CL-USER> (time (log-for (info) "This is some info.")) > Evaluation took: > 0.12 seconds of real time > 0.085579 seconds of user run time > 0.018949 seconds of system run time > 0 calls to %EVAL > 0 page faults and > 1,387,352 bytes consed. > NIL > CL-USER> (time (log-for (info) "This is some info.")) > Evaluation took: > 0.121 seconds of real time > 0.086583 seconds of user run time > 0.020286 seconds of system run time > 0 calls to %EVAL > 0 page faults and > 1,374,936 bytes consed. > NIL > CL-USER> (defcategory foo) > # > CL-USER> (defcategory bar) > # > CL-USER> (defcategory foobar (and foo bar)) > # (AND FOO BAR)> > CL-USER> (start-sender my-test-sender2 > (stream-sender :location *standard-output*) > :category-spec (foobar) > :output-spec (time message)) > # > CL-USER> (log-for (foobar) "FOOBAR!") > 3379622899 "FOOBAR!" > NIL > CL-USER> (time (log-for (foobar) "FOOBAR!")) > 3379622909 "FOOBAR!" > Evaluation took: > 0.367 seconds of real time > 0.253236 seconds of user run time > 0.031588 seconds of system run time > 0 calls to %EVAL > 0 page faults and > 4,804,736 bytes consed. > NIL > CL-USER> (time (log-for (foobar) "FOOBAR!")) > 3379622912 "FOOBAR!" > Evaluation took: > 0.379 seconds of real time > 0.277797 seconds of user run time > 0.03945 seconds of system run time > [Run times include 0.049 seconds GC run time.] > 0 calls to %EVAL > 0 page faults and > 4,939,712 bytes consed. > NIL > CL-USER> > _______________________________________________ > log5-devel mailing list > log5-devel at common-lisp.net > http://common-lisp.net/cgi-bin/mailman/listinfo/log5-devel -- Gary Warren King, metabang.com Cell: (413) 885 9127 Fax: (206) 338-4052 gwkkwg on Skype * garethsan on AIM From mprice at atl.lmco.com Tue Feb 20 17:13:28 2007 From: mprice at atl.lmco.com (Michael Price) Date: Tue, 20 Feb 2007 12:13:28 -0500 (EST) Subject: [log5-devel] unbound-variable error with start-sender Message-ID: <38775.166.17.242.104.1171991608.squirrel@www.atl.lmco.com> Did I miss a message explaining the new start-sender interface? The code below worked before the latest changes to log5. Michael ************************* CL-USER> (require :log5) NIL CL-USER> (use-package :log5) T CL-USER> (start-sender my-test-sender (stream-sender :location *standard-output*) :category-spec (warn+) :output-spec (time message)) debugger invoked on a UNBOUND-VARIABLE in thread #: The variable MY-TEST-SENDER is unbound. Type HELP for debugger help, or (SB-EXT:QUIT) to exit from SBCL. restarts (invokable by number or by possibly-abbreviated name): 0: [ABORT] Exit debugger, returning to top level. (SB-INT:SIMPLE-EVAL-IN-LEXENV MY-TEST-SENDER #) 0] 0 From gwking at metabang.com Tue Feb 20 18:26:22 2007 From: gwking at metabang.com (Gary King) Date: Tue, 20 Feb 2007 13:26:22 -0500 Subject: [log5-devel] unbound-variable error with start-sender In-Reply-To: <38775.166.17.242.104.1171991608.squirrel@www.atl.lmco.com> References: <38775.166.17.242.104.1171991608.squirrel@www.atl.lmco.com> Message-ID: Hi Michael, You didn't miss it; I hadn't gotten around to sending it. My apologies; it was on my list for today. On Feb 20, 2007, at 12:13 PM, Michael Price wrote: > Did I miss a message explaining the new start-sender interface? The > code > below worked before the latest changes to log5. > > Michael > > ************************* > > CL-USER> (require :log5) > > NIL > CL-USER> (use-package :log5) > > T > CL-USER> (start-sender my-test-sender > (stream-sender :location *standard-output*) > :category-spec (warn+) > :output-spec (time message)) > > debugger invoked on a UNBOUND-VARIABLE in thread # thread" > {A744959}>: > The variable MY-TEST-SENDER is unbound. > > Type HELP for debugger help, or (SB-EXT:QUIT) to exit from SBCL. > > restarts (invokable by number or by possibly-abbreviated name): > 0: [ABORT] Exit debugger, returning to top level. > > (SB-INT:SIMPLE-EVAL-IN-LEXENV MY-TEST-SENDER #) > 0] 0 > > > _______________________________________________ > log5-devel mailing list > log5-devel at common-lisp.net > http://common-lisp.net/cgi-bin/mailman/listinfo/log5-devel -- Gary Warren King, metabang.com Cell: (413) 885 9127 Fax: (206) 338-4052 gwkkwg on Skype * garethsan on AIM From gwking at metabang.com Tue Feb 20 19:35:27 2007 From: gwking at metabang.com (Gary King) Date: Tue, 20 Feb 2007 14:35:27 -0500 Subject: [log5-devel] Announce : log5 version 0.2.1 Message-ID: <556D11F2-07F3-44C3-986F-ED4C99186457@metabang.com> As Michael Price has already noticed (sorry Michael), log5 version 0.2.1 has been released. This version brings some speed improvements (as discussed on [unCLog][log5-speed]) *and* a minor change in API. I decided that it was a bag-thing to have the name of sender be unevaluated since sometimes you want to make up the name at run time. In practice this means that calls to (start-sender foo ...) must change to (start-sender 'foo ...) Ditto for calls to stop-sender. My apologies for not making this change more clear. I'll probably do the same thing to the output and message specs (i.e., change the API, not do it unannounced! < smile >) [log5-speed]: http://metabang.com/unclogit/?p=79 -- Gary Warren King, metabang.com Cell: (413) 885 9127 Fax: (206) 338-4052 gwkkwg on Skype * garethsan on AIM