From waldo at trianet.net Sat Oct 1 04:39:06 2005 From: waldo at trianet.net (Waldo Rubinstein) Date: Sat, 1 Oct 2005 00:39:06 -0400 Subject: [Bese-devel] UCW for beginners Message-ID: <040C2040-C669-46D3-9967-297AA5808A5F@trianet.net> As I'm learning more about Lisp and UCW and have been documenting all along my findings, I decided to formalize what I have learned/done so far and contribute it to the community. Since this is something I decided just now, I don't even have version 0.01 available yet. What I'm trying to do is help improve the existing UCW documentation along with additional information I've learned myself and through the list activity. So, I have a few questions/requests: 1) I remember about a couple of weeks ago there was a discussion to make a wiki for UCW et al. Last I remember was Marco pointing out the following http://lisp.tech.coop/index. Does anyone know the status of this site and its transformation into a "mostly related to UCW and Lisp on Lines" site? 2) What is the status of Lisp on Lines and where can I find more information about it other than the generic information on cliki.net? 3) When I first started on Ruby on Rails (RoR), one thing that helped me learned more about practical applications of what the framework offered was by looking at other people's applications and code. RoR published a section where members would make their working applications available to the community for usage/learning (see http://wiki.rubyonrails.com/rails/pages/OpenSourceProjects). Is anyone willing to contribute working applications (small, medium, and/ or large) to the community? As I learn more, I will be able to contribute more, so I ask of you to help me (and others) learn from your experience so we can me this a better community for all. Maybe we can then invite Andreas Fuchs to criticize what the community has done and potentially point out how things are better or can be made better "on the other side of the fence". Thanks, Waldo From pjb at informatimago.com Sat Oct 1 04:55:17 2005 From: pjb at informatimago.com (Pascal Bourguignon) Date: Sat, 1 Oct 2005 06:55:17 +0200 Subject: [Bese-devel] UCW for beginners In-Reply-To: <040C2040-C669-46D3-9967-297AA5808A5F@trianet.net> References: <040C2040-C669-46D3-9967-297AA5808A5F@trianet.net> Message-ID: <17214.5813.885425.604465@thalassa.informatimago.com> Waldo Rubinstein writes: > 1) I remember about a couple of weeks ago there was a discussion to > make a wiki for UCW et al. Last I remember was Marco pointing out the > following http://lisp.tech.coop/index Does anyone know the status of > this site and its transformation into a "mostly related to UCW and > Lisp on Lines" site? Just click on that link, and cry. Then click on: http://www.cliki.net/UCW and be happy! -- __Pascal Bourguignon__ http://www.informatimago.com/ You never feed me. Perhaps I'll sleep on your face. That will sure show you. From mb at bese.it Sat Oct 1 09:27:44 2005 From: mb at bese.it (Marco Baringer) Date: Sat, 01 Oct 2005 11:27:44 +0200 Subject: [Bese-devel] mod_lisp readme instructions In-Reply-To: <20050930163822.3734A880DE@common-lisp.net> (Nathan Bird's message of "Fri, 30 Sep 2005 12:38:18 -0400") References: <20050930163822.3734A880DE@common-lisp.net> Message-ID: "Nathan Bird" writes: > The section of the readme that describes how to configure mod_lisp points to > > ucw/libs/mod_lisp/mod-lisp-httpd13.conf > which doesn't seem to be in the darcs repo. docs/mod-lisp-httpd13.conf thanks for pointing this out. -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From liuchangjohn at gmail.com Sat Oct 1 05:58:29 2005 From: liuchangjohn at gmail.com (liu chang) Date: Sat, 1 Oct 2005 13:58:29 +0800 Subject: [Bese-devel] UCW for beginners In-Reply-To: <040C2040-C669-46D3-9967-297AA5808A5F@trianet.net> References: <040C2040-C669-46D3-9967-297AA5808A5F@trianet.net> Message-ID: <94e43e3905093022584fa04125@mail.gmail.com> On 10/1/05, Waldo Rubinstein wrote: > > As I'm learning more about Lisp and UCW and have been documenting all > along my findings, I decided to formalize what I have learned/done so > far and contribute it to the community. Since this is something I > decided just now, I don't even have version 0.01 available yet. > > What I'm trying to do is help improve the existing UCW documentation > along with additional information I've learned myself and through the > list activity. So, I have a few questions/requests: > > 1) I remember about a couple of weeks ago there was a discussion to > make a wiki for UCW et al. Last I remember was Marco pointing out the > following http://lisp.tech.coop/index. Does anyone know the status of > this site and its transformation into a "mostly related to UCW and > Lisp on Lines" site? Perhaps you can consider creating a wiki book on wikibooks.org ? 2) What is the status of Lisp on Lines and where can I find more > information about it other than the generic information on cliki.net > ? > 3) When I first started on Ruby on Rails (RoR), one thing that helped > me learned more about practical applications of what the framework > offered was by looking at other people's applications and code. RoR > published a section where members would make their working > applications available to the community for usage/learning (see > http://wiki.rubyonrails.com/rails/pages/OpenSourceProjects). Is > anyone willing to contribute working applications (small, medium, and/ > or large) to the community? > > As I learn more, I will be able to contribute more, so I ask of you > to help me (and others) learn from your experience so we can me this > a better community for all. Maybe we can then invite Andreas Fuchs to > criticize what the community has done and potentially point out how > things are better or can be made better "on the other side of the > fence". > > Thanks, > Waldo > > _______________________________________________ > bese-devel mailing list > bese-devel at common-lisp.net > http://common-lisp.net/cgi-bin/mailman/listinfo/bese-devel > -------------- next part -------------- An HTML attachment was scrubbed... URL: From asbjxrn at bjxrnstad.net Sat Oct 1 06:22:51 2005 From: asbjxrn at bjxrnstad.net (=?ISO-8859-1?Q?Asbj=F8rn_Bj=F8rnstad?=) Date: Sat, 1 Oct 2005 14:22:51 +0800 Subject: [Bese-devel] ucw_dev + arnesi_dev on win32 / lispworks 4.45 In-Reply-To: <4877ae6405093016026c8b2b82@mail.gmail.com> References: <4877ae6405093016026c8b2b82@mail.gmail.com> Message-ID: On 01 Oct 2005, at 7:02 AM, Mac Chan wrote: > Hi, > > I'm trying to load ucw_dev + arnesi_dev on win32 lispworks > professional and encounter some errors. Sorry I don't know enough to > figure out where the culprit is. So all I can do is to report it to > the list and see if anyone can help. > > Thanks. > > **++++ Error in (METHOD IT.BESE.UCW::PLACE (IT.BESE.UCW::PLACE)): > No applicable methods for # IT.BESE.ARNESI::LEXICAL-VARIABLES 21C78E9A> with args > (#S(LEXICAL::ENVIRONMENT :VARIABLES ((#:KEYFORM17433 . > #:|dummy-lexical-variable|) (#:G17432 . #:|dummy-lexical-variable|) > I have not tried this as I don't run lispworks under win32, but I think the forms for lispworks and linux in arnesi/src/lexenv.lisp should work for win32. Try changing #+(and lispworks linux) to just #+lispworks and see if it works. -- -asbjxrn From bobstopper at bobturf.org Sat Oct 1 13:39:34 2005 From: bobstopper at bobturf.org (Robert Marlow) Date: Sat, 01 Oct 2005 21:39:34 +0800 Subject: [Bese-devel] ucwctl bug Message-ID: <877jcxuzjd.wl%bobstopper@bobturf.org> 'lo I just noticed that the [ -n $DETACHTTY ] and [ -n $ATTCHTTY ] lines in ucwctl should be -z rather than -n. From asbjxrn at bjxrnstad.net Sat Oct 1 16:28:00 2005 From: asbjxrn at bjxrnstad.net (=?ISO-8859-1?Q?Asbj=F8rn_Bj=F8rnstad?=) Date: Sun, 2 Oct 2005 00:28:00 +0800 Subject: [Bese-devel] ucwctl bug In-Reply-To: <877jcxuzjd.wl%bobstopper@bobturf.org> References: <877jcxuzjd.wl%bobstopper@bobturf.org> Message-ID: On 01 Oct 2005, at 9:39 PM, Robert Marlow wrote: > 'lo > > I just noticed that the [ -n $DETACHTTY ] and [ -n $ATTCHTTY ] lines > in ucwctl should be -z rather than -n. I'd vote for [ ! -x $DETACHTTY ] and [ ! -x $ATTACHTTY ] myself. (Maybe with a slightly changed error message.) -- -asbjxrn From mb at bese.it Sat Oct 1 17:02:34 2005 From: mb at bese.it (Marco Baringer) Date: Sat, 01 Oct 2005 19:02:34 +0200 Subject: [Bese-devel] UCW for beginners References: <040C2040-C669-46D3-9967-297AA5808A5F@trianet.net> Message-ID: Waldo Rubinstein writes: > As I'm learning more about Lisp and UCW and have been documenting all > along my findings, I decided to formalize what I have learned/done so > far and contribute it to the community. Since this is something I > decided just now, I don't even have version 0.01 available yet. wow, that would be very cool. > What I'm trying to do is help improve the existing UCW documentation > along with additional information I've learned myself and through the > list activity. So, I have a few questions/requests: > > 1) I remember about a couple of weeks ago there was a discussion to > make a wiki for UCW et al. Last I remember was Marco pointing out > the following http://lisp.tech.coop/index. Does anyone know the > status of this site and its transformation into a "mostly related > to UCW and Lisp on Lines" site? i've been very busy lately and haven't had the time to work on this, though it is on my todo list. > 2) What is the status of Lisp on Lines and where can I find more > information about it other than the generic information on > cliki.net? afaik lisp-on-lines is in production use, the only documentation i know of is the source code. -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From emailmac at gmail.com Sat Oct 1 20:57:39 2005 From: emailmac at gmail.com (Mac Chan) Date: Sat, 1 Oct 2005 13:57:39 -0700 Subject: [Bese-devel] Re: Question regarding container and widget-component In-Reply-To: <4877ae6405100113263f61259c@mail.gmail.com> References: <4877ae6405100113263f61259c@mail.gmail.com> Message-ID: <4877ae6405100113573cf36098@mail.gmail.com> OK. So I came up with this. Apparently *context* is not available when during object initialization. So this won't work: (defmethod shared-initialize :after ((obj level4-container) slot-names &rest initargs) (declare (ignore slot-names initargs)) (setf (root obj) (level1-container (context.window-component *context*)))) Now I patch the reference before the component is rendered. (defmethod render-on :before ((res response) (obj level4-container)) (setf (root obj) (level1-container (context.window-component *context*)))) I'm not sure if this is the proper way to structure my app. Basically I have some global state to keep in the top level object, and I don't want to replicate the states to the sub components (the blogline rss-reader ucw example posted on c.l.l sometime ago uses this approach). So each subcomponent will have a reference to the top level object so it will render the state properly. Maybe this is not the standard way to do things, but I find that the other way (the blogline example) resulted in a lot of state replication code. Anyone want to chime in and share your thoughts? On 10/1/05, Mac Chan wrote: > Is there a simple way to carry a reference to the top level component > for each subcomponent? > > (defcomponent level1-container (widget-component) > ( > (level2-container :component level2-container > :accessor level2-container) > )) > > (defcomponent level2-container (widget-component) > ( > (root :initarg :root :accessor root) ;; point to level1-container obj > (level3-container :component level3-container > :accessor level3-container) > )) > > (defcomponent level3-container (widget-component) > ( > (root :initarg :root :accessor root) ;; point to level1-container obj > (level4-container :component level4-container > :accessor level4-container) > )) > > (defcomponent level4-container (widget-component) > ( > (root :initarg :root :accessor root) ;; point to level1-container obj > )) > > ;; ---------------------------------------------------------------- > ;; Approach 1 - use after method of the top level container to assign > ;; the referece. Ugly and cumbersome. Is there a better way? > ;; ---------------------------------------------------------------- > > (defmethod shared-initialize :after ((obj level1-container) slot-names > &rest initargs) > (declare (ignore slot-names initargs)) > (setf (root (level2-container obj)) obj) > (setf (root (level3-container (level2-container obj))) obj) > (setf (root (level4-container (level3-container (level2-container obj)))) obj) > ) > > ;; ---------------------------------------------------------------- > ;; Approach 2 - pass SELF object to initarg, but how to refer to SELF??? > ;; ---------------------------------------------------------------- > (defcomponent level1-container (widget-component) > ( > (level2-container :component (level2-container :root SELF) ;; SELF > = level1-container ??? > :accessor level2-container) > )) > > ;; ---------------------------------------------------------------- > ;; Approach 3 - use after method of each component to find its > ;; containing component or root component > ;; ---------------------------------------------------------------- > > (defmethod shared-initialize :after ((obj level4-container) slot-names > &rest initargs) > (declare (ignore slot-names initargs)) > (setf (root obj) (FIND-CONTAINING-COMPONENT obj))) ;; is there a way > to do this? > > Maybe there's a reference to the top level window-component and we can > work our way from there? > > Thanks. > From emailmac at gmail.com Sat Oct 1 20:26:04 2005 From: emailmac at gmail.com (Mac Chan) Date: Sat, 1 Oct 2005 13:26:04 -0700 Subject: [Bese-devel] Question regarding container and widget-component Message-ID: <4877ae6405100113263f61259c@mail.gmail.com> Is there a simple way to carry a reference to the top level component for each subcomponent? (defcomponent level1-container (widget-component) ( (level2-container :component level2-container :accessor level2-container) )) (defcomponent level2-container (widget-component) ( (root :initarg :root :accessor root) ;; point to level1-container obj (level3-container :component level3-container :accessor level3-container) )) (defcomponent level3-container (widget-component) ( (root :initarg :root :accessor root) ;; point to level1-container obj (level4-container :component level4-container :accessor level4-container) )) (defcomponent level4-container (widget-component) ( (root :initarg :root :accessor root) ;; point to level1-container obj )) ;; ---------------------------------------------------------------- ;; Approach 1 - use after method of the top level container to assign ;; the referece. Ugly and cumbersome. Is there a better way? ;; ---------------------------------------------------------------- (defmethod shared-initialize :after ((obj level1-container) slot-names &rest initargs) (declare (ignore slot-names initargs)) (setf (root (level2-container obj)) obj) (setf (root (level3-container (level2-container obj))) obj) (setf (root (level4-container (level3-container (level2-container obj)))) obj) ) ;; ---------------------------------------------------------------- ;; Approach 2 - pass SELF object to initarg, but how to refer to SELF??? ;; ---------------------------------------------------------------- (defcomponent level1-container (widget-component) ( (level2-container :component (level2-container :root SELF) ;; SELF = level1-container ??? :accessor level2-container) )) ;; ---------------------------------------------------------------- ;; Approach 3 - use after method of each component to find its ;; containing component or root component ;; ---------------------------------------------------------------- (defmethod shared-initialize :after ((obj level4-container) slot-names &rest initargs) (declare (ignore slot-names initargs)) (setf (root obj) (FIND-CONTAINING-COMPONENT obj))) ;; is there a way to do this? Maybe there's a reference to the top level window-component and we can work our way from there? Thanks. From waldo at trianet.net Sun Oct 2 04:16:40 2005 From: waldo at trianet.net (Waldo Rubinstein) Date: Sun, 2 Oct 2005 00:16:40 -0400 Subject: [Bese-devel] UCW for beginners In-Reply-To: References: <040C2040-C669-46D3-9967-297AA5808A5F@trianet.net> Message-ID: <8C8F6A77-0183-457C-A810-F693358830CA@trianet.net> Well, it would be great to get a copy of it. I've been trying to get it at http://versions.tech.coop/lisp-on-lines/ but for the longest time I can't connect to that server. Is there another URL to fetch it from? Thanks, - Waldo On Oct 1, 2005, at 1:02 PM, Marco Baringer wrote: > afaik lisp-on-lines is in production use, the only documentation i > know of is the source code. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From drewc at tech.coop Mon Oct 3 16:12:59 2005 From: drewc at tech.coop (Drew Crampsie) Date: Mon, 03 Oct 2005 09:12:59 -0700 Subject: [Bese-devel] UCW for beginners In-Reply-To: References: <040C2040-C669-46D3-9967-297AA5808A5F@trianet.net> <8C8F6A77-0183-457C-A810-F693358830CA@trianet.net> <434120DC.5040902@tech.coop> Message-ID: <4341588B.8080505@tech.coop> Waldo Rubinstein wrote: > Thanks. Since your posting about LoL about a couple of weeks ago, I've > been very curious to play with it. > > BTW, I came across some sample code that I believe uses it (http:// > paste.lisp.org/display/8912) and I was wondering if Lisp-on-Lines uses > or is somewhat related to Mewa (http://www.adrian-lienhard.ch/ > files/mewa.pdf)? The presentation system is mostly based on the ideas presented in that paper, mixed with the UCW presentations, and lives in a package called 'mewa' :). It is much more lispy though, and infact has been more lispified from the procedural interface you see in that example (set-attribute and find-attribute) to a nice declarative syntax: (define-attributes (person company) (address address-viewer :label "Address") (phone-number t :label "Daytime Phone")) (define-attributes (person) (first-name t :label "first name")) etc etc. And to confirm what Marco said, LoL _is_ in production use, but has no documentation. I'm trying to get permission to release the App that LoL was written in conjunction with as Free Software, to serve as an example of how to (poorly) use LoL and UCW. Until then, the source serves (poorly) as the docs :) drewc > Thanks, > Waldo > > On Oct 3, 2005, at 8:15 AM, Drew Crampsie wrote: > >> Waldo Rubinstein wrote: >> >>> Well, it would be great to get a copy of it. I've been trying to get >>> it at http://versions.tech.coop/lisp-on-lines/ but for the longest >>> time I can't connect to that server. Is there another URL to fetch >>> it from? >>> >> >> I had to take that virtual server down, and have not gotten around to >> setting it back up yet. >> >> Next week, i promise, and i'll send a message here when things are >> back up. >> >> drewc >> >> >> >> >>> Thanks, >>> - Waldo >>> On Oct 1, 2005, at 1:02 PM, Marco Baringer wrote: >>> >>>> afaik lisp-on-lines is in production use, the only documentation i >>>> >>>> know of is the source code. >>>> >>>> >>>> >>> --------------------------------------------------------------------- >>> --- >>> _______________________________________________ >>> bese-devel mailing list >>> bese-devel at common-lisp.net >>> http://common-lisp.net/cgi-bin/mailman/listinfo/bese-devel >>> >> >> > From alexey.antipov at gmail.com Mon Oct 3 13:02:04 2005 From: alexey.antipov at gmail.com (Alexey Antipov) Date: Mon, 3 Oct 2005 13:02:04 +0000 (UTC) Subject: [Bese-devel] Re: Static Files using HTTPD Backend References: <215432060509300653j6a0a614cq652bc2f927fcde46@mail.gmail.com> Message-ID: Scott Bell gmail.com> writes: > If this is not an appropriate place for this question, please feel > free to direct me elsewhere or simply ignore me. I'm having some > difficulties serving static files using the httpd backend in ucw_dev. > It seems as if I'm not able to properly set the :www-roots list of > pathnames, although I have tried several approaches (absolute, > relative, etc.). Of course the error for all my attempts to grab > static files is 404. The problem appeared after examples was moved to "/". Here my try: (in-package :it.bese.ucw) (defun url-rel-name (url base) (cond ((equal "/" base) (but-head url)) (t (enough-namestring url base)))) (defmethod publish-directory ((backend httpd-backend) directory-pathname url-base) (flet ((truename-from-url (query-path) (merge-pathnames (url-rel-name query-path url-base) directory-pathname))) (push (cons (lambda (request-url) (and (starts-with request-url url-base) (probe-file (truename-from-url request-url)))) (lambda (request response) (serve-file (truename-from-url (query-path request)) request response))) (handlers backend)))) Obviously, Marco will do better. From ignas.mikalajunas at gmail.com Tue Oct 4 10:51:26 2005 From: ignas.mikalajunas at gmail.com (Ignas Mikalajunas) Date: Tue, 4 Oct 2005 13:51:26 +0300 Subject: [Bese-devel] Would it be very difficult to make both arnesi and yaclml asdf installable Message-ID: I know that making UCW itself asdf installable would not make much sense - UCW can't operate witohout a backend, but having at least yaclml installable separately would be kind of nice for those who are using (or at least trying to use) it without UCW. Would it make maintaining UCW more difficult ? Both libraries are kept in separate repositories anyway. Ignas From sebell at gmail.com Tue Oct 4 14:06:21 2005 From: sebell at gmail.com (Scott Bell) Date: Tue, 4 Oct 2005 08:06:21 -0600 Subject: [Bese-devel] UCW_DEV and Allegro CL Message-ID: <215432060510040706i4978efv8d6f646b60be477b@mail.gmail.com> Hello everyone, My most recent attempts to run ucw_dev on Allegro CL (7.0 trial) have been unsuccessful so far. ;;; Compiling file c:\Lisp\ucw_dev\src\rerl\backtracking.lisp ;;; Writing fasl file c:\Lisp\ucw_dev\src\rerl\backtracking.fasl Warning: An error occurred (Class # is not yet finalized.) during the load "c:/Lisp/web.lisp" International Allegro CL Trial Edition 7.0 [Windows] (Oct 3, 2005 21:15) Unfortunately I haven't made any further progress on fixing the error, so any help would be greatly appreciated. Thanks, - Scott Bell From sebell at gmail.com Tue Oct 4 14:27:09 2005 From: sebell at gmail.com (Scott Bell) Date: Tue, 4 Oct 2005 08:27:09 -0600 Subject: [Bese-devel] Re: UCW_DEV and Allegro CL In-Reply-To: <215432060510040706i4978efv8d6f646b60be477b@mail.gmail.com> References: <215432060510040706i4978efv8d6f646b60be477b@mail.gmail.com> Message-ID: <215432060510040727s69ca810dv7f1c506baa2a7f63@mail.gmail.com> Hi everyone, I missed this the first time through the mailing list search, but apparently this is a known reported issue. Disregard. Thanks, - Scott Bell On 10/4/05, Scott Bell wrote: > Hello everyone, > > My most recent attempts to run ucw_dev on Allegro CL (7.0 trial) have > been unsuccessful so far. > > ;;; Compiling file c:\Lisp\ucw_dev\src\rerl\backtracking.lisp > ;;; Writing fasl file c:\Lisp\ucw_dev\src\rerl\backtracking.fasl > Warning: An error occurred > (Class # is > not yet finalized.) > during the load "c:/Lisp/web.lisp" > International Allegro CL Trial Edition > 7.0 [Windows] (Oct 3, 2005 21:15) > > Unfortunately I haven't made any further progress on fixing the error, > so any help would be greatly appreciated. > > Thanks, > > - Scott Bell > From drewc at tech.coop Fri Oct 7 19:58:42 2005 From: drewc at tech.coop (Drew Crampsie) Date: Fri, 07 Oct 2005 12:58:42 -0700 Subject: [Bese-devel] Method Combination issue. Message-ID: <4346D372.9050200@tech.coop> I have the following action (defaction ok :around ((self policy-editor) &optional args) (declare (ignore arg)) (if (policy-type-code (instance self)) (call-next-method) (call 'info-message :message "Policy must have a Policy Type. Press OK to go back"))) the "else" case works fine, but the call-next-method b0rks with : ERROR Missing required arguments, expected (# #), got NIL. That makes enough sense, so why are the arguments no being passed to the next method? that method combination code is over my head at the moment (probably due to a horrible cold). drewc From mb at bese.it Fri Oct 7 21:34:04 2005 From: mb at bese.it (Marco Baringer) Date: Fri, 07 Oct 2005 23:34:04 +0200 Subject: [Bese-devel] Reusable Components -- UCW and ContextL References: <20050924.194132.234297301.svg@surnet.ru> Message-ID: Vladimir Sekissov writes: > Good day, > > waldo> Well, I don't know if I got the point correctly or not. However, I > waldo> got to think that combining UCW and ContextL with some component > waldo> based glue framework (possibly Lisp-on-Lines that I've heard about > waldo> but have not seen anything about yet) could potentially allow the > waldo> creation of very flexible components. > > The problem with ContextL and UCW is that your application could be > continued in another thread and you lost the context or got the wrong > one. while i think contextl is very cool (and i think contextl could be successfully used within lisp-on-lines (theoretically at least)) i don't really know what ucw per-se could do to make this easier. the dynamic state stuff sholud be fairly easly to deal with, considering that i just taught the interpter to handle dynamic state (like special variables) though someone will need to look into this more to be sure. -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From mb at bese.it Fri Oct 7 21:35:00 2005 From: mb at bese.it (Marco Baringer) Date: Fri, 07 Oct 2005 23:35:00 +0200 Subject: [Bese-devel] Re: UCW_DEV and Allegro CL References: <215432060510040706i4978efv8d6f646b60be477b@mail.gmail.com> <215432060510040727s69ca810dv7f1c506baa2a7f63@mail.gmail.com> Message-ID: Scott Bell writes: > Hi everyone, > > I missed this the first time through the mailing list search, but > apparently this is a known reported issue. Disregard. the fact that application-form is not yet finalized means (afaict) that the walker stuff (which is the basis for the cc interpreter (which is the basis for with-call/cc)) is not yet loaded/initialized when compiling ucw. this doesn't make a whole lot of sense to me, what happens if you try, manually and from the repl, asdf:load-op'ing arnesi and then ucw? -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From mb at bese.it Fri Oct 7 21:35:14 2005 From: mb at bese.it (Marco Baringer) Date: Fri, 07 Oct 2005 23:35:14 +0200 Subject: [Bese-devel] Re: Static Files using HTTPD Backend References: <215432060509300653j6a0a614cq652bc2f927fcde46@mail.gmail.com> Message-ID: Alexey Antipov writes: > The problem appeared after examples was moved to "/". > Here my try: fixed. thanks for reporting this (and providing the patch (even though i didn't end up using it)). > Obviously, Marco will do better. "never mistake lack of talent for genius" - Type O Negative :) -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From mb at bese.it Fri Oct 7 21:37:14 2005 From: mb at bese.it (Marco Baringer) Date: Fri, 07 Oct 2005 23:37:14 +0200 Subject: [Bese-devel] die render-on. die! DIE! Message-ID: i'm going to drop the render-on method from ucw tomorrow and just leave a render method (whcih doesn't take the request object argument). you've been warned. -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From mb at bese.it Fri Oct 7 21:38:53 2005 From: mb at bese.it (Marco Baringer) Date: Fri, 07 Oct 2005 23:38:53 +0200 Subject: [Bese-devel] Re: Static Files using HTTPD Backend In-Reply-To: (Marco Baringer's message of "Fri, 07 Oct 2005 23:35:14 +0200") References: <215432060509300653j6a0a614cq652bc2f927fcde46@mail.gmail.com> Message-ID: "Marco Baringer" writes: > Alexey Antipov writes: > >> The problem appeared after examples was moved to "/". >> Here my try: > > fixed. thanks for reporting this (and providing the patch (even though > i didn't end up using it)). this patch depends on a patch to arnesi, remeber to pull that repo as well. -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From mb at bese.it Fri Oct 7 21:34:39 2005 From: mb at bese.it (Marco Baringer) Date: Fri, 07 Oct 2005 23:34:39 +0200 Subject: [Bese-devel] Question regarding container and widget-component References: <4877ae6405100113263f61259c@mail.gmail.com> Message-ID: Mac Chan writes: > Is there a simple way to carry a reference to the top level component > for each subcomponent? every component has a slot called PARENT which points to the containing component, window-components have a NIL parent. this link is setup and maintained by ucw's internal machinery so you needn't worry about setting it. is this what you're looking for? mind if i ask what you're trying to do? -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From mb at bese.it Fri Oct 7 21:35:31 2005 From: mb at bese.it (Marco Baringer) Date: Fri, 07 Oct 2005 23:35:31 +0200 Subject: [Bese-devel] Static Files using HTTPD Backend References: <215432060509300653j6a0a614cq652bc2f927fcde46@mail.gmail.com> Message-ID: Scott Bell writes: > Hello everyone, > > If this is not an appropriate place for this question, please feel > free to direct me elsewhere or simply ignore me. I'm having some > difficulties serving static files using the httpd backend in ucw_dev. > It seems as if I'm not able to properly set the :www-roots list of > pathnames, although I have tried several approaches (absolute, > relative, etc.). Of course the error for all my attempts to grab > static files is 404. here's how the www-roots thing works: when we register an application we teel the backend to serve static files off of the directories in www-roots at the url-prefix of the app. so if we have an app with www-roots (list "/home/me/wwwroot/") and a url-prefix of "/my-app/" the a request for "/my-app/foo/bar.html" is mapped to the file "/home/me/wwwroot/foo/bar.html". the pathnames in www-roots are converted into truenames (so symlinks are followed) by merging them with (truename *default-pathname-defaults*). if the behaviour you're experiencing is different than you've found a bug (congratulations!) and we (fsvo "we") will look into it. [the exception to this is the mod_lisp backend. in that case you're going to need to manually configure apache by editing httpd.conf, we can't do this automatically] > Can anyone offer any tips and tricks to this process? I had tracked > down some traffic on this list regarding this issue, but I didn't > manage to find a solution. I'm using SBCL on linux-i386 and chose > httpd for the sake of simplicity, another backend could be feasible. could you try with araneida or portableaserve? the httpd backend may very well be broken. p.s. - it was infact broken. see my other mail. -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From mb at bese.it Sat Oct 8 11:12:26 2005 From: mb at bese.it (Marco Baringer) Date: Sat, 08 Oct 2005 13:12:26 +0200 Subject: [Bese-devel] die render-on. die! DIE! In-Reply-To: (Marco Baringer's message of "Fri, 07 Oct 2005 23:37:14 +0200") References: Message-ID: "Marco Baringer" writes: > i'm going to drop the render-on method from ucw tomorrow and just > leave a render method (whcih doesn't take the request object > argument). you've been warned. this has been done, until i've tested it on one of my applications i'm going to let this change sit in this repo: http://common-lisp.net/project/ucw/repos/ucw_sans_render-on i'll move it over to ucw_dev early next week. -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From a_bakic at yahoo.com Sat Oct 8 21:17:58 2005 From: a_bakic at yahoo.com (Aleksandar Bakic) Date: Sat, 8 Oct 2005 14:17:58 -0700 (PDT) Subject: [Bese-devel] a problem with the summation example Message-ID: <20051008211758.46744.qmail@web40605.mail.yahoo.com> Hi, This might have to do with the latest dynamic environment patch (or, perhaps even the interface-element patch, but I suspect the former): try the summation example. It crashes due to a "gc invariant lost" error in the latest SBCL (and a little older one, too; the platform is AMD64/Fedora Core 3, but SBCL is compiled for x86). Below is the backtrace from the low-level debugger. Alex 2005-10-08T23:14.15 +INFO+ IT.BESE.UCW::UCW.BACKEND: Handling request for "/" 2005-10-08T23:14.15 +INFO+ IT.BESE.UCW::UCW-LOGGER: Serving action UCW::SWITCH-COMPONENT in session "xlckeTOWxEulTLlDsiDSOCsnicasjYPvoASworJY". 2005-10-08T23:14.15 +INFO+ IT.BESE.UCW::UCW-LOGGER: Serving action UCW::START in session "xlckeTOWxEulTLlDsiDSOCsnicasjYPvoASworJY". 2005-10-08T23:14.15 +ERROR+ IT.BESE.UCW::UCW-LOGGER: Error # while serving action. fatal error encountered in SBCL pid 27784(tid 4133391264): GC invariant lost, file "gc-common.c", line 190 LDB monitor ldb> backtrace Backtrace: 0: Foreign function lose, fp = 0xf65e5e48, ra = 0x8051dd3 1: Foreign function scavenge, fp = 0xf65e5e68, ra = 0x8050422 2: Foreign function collect_garbage, fp = 0xf65e5ee8, ra = 0x805ff5c 3: (SB-C::TL-XEP SB-KERNEL::COLLECT-GARBAGE) 4: (COMMON-LISP::FLET WITHOUT-INTERRUPTS-BODY-72) 5: (SB-C::TL-XEP SB-KERNEL::SUB-GC) 6: Foreign function call_into_lisp, fp = 0xf65e6114, ra = 0x8060c51 7: Foreign function funcall0, fp = 0xf65e6134, ra = 0x805b731 8: Foreign function interrupt_maybe_gc_int, fp = 0xf65e6374, ra = 0x80535bb 9: Foreign function interrupt_handle_pending, fp = 0xf65e65b4, ra = 0x8053963 10: Foreign fp = 0xf65e6958, ra = 0xffffe600 11: (SB-C::TL-XEP SB-PRETTY::OUTPUT-PRETTY-OBJECT) 12: (SB-C::HAIRY-ARG-PROCESSOR COMMON-LISP::PRIN1) 13: (SB-C::TL-XEP SB-FORMAT::S-FORMAT-DIRECTIVE-INTERPRETER) 14: (SB-C::TL-XEP SB-FORMAT::INTERPRET-DIRECTIVE-LIST) 15: (SB-C::HAIRY-ARG-PROCESSOR SB-FORMAT::%FORMAT) 16: (SB-C::TL-XEP COMMON-LISP::FORMAT) 17: (COMMON-LISP::LABELS SB-C::WALK) 18: (COMMON-LISP::LABELS SB-C::WALK) 19: (SB-C::TL-XEP SB-C::DEBUG-NAME) 20: (SB-C::TL-XEP SB-C::IR1-CONVERT-AUX-BINDINGS) 21: (SB-C::TL-XEP SB-C::%PROCESSING-DECLS) 22: (SB-C::TL-XEP SB-C::IR1-CONVERT-LET*) 23: (SB-C::TL-XEP SB-C::IR1-CONVERT) 24: (SB-C::TL-XEP SB-C::IR1-CONVERT-PROGN-BODY) 25: (SB-C::TL-XEP SB-C::IR1-CONVERT-AUX-BINDINGS) 26: (SB-C::TL-XEP SB-C::IR1-CONVERT-SPECIAL-BINDINGS) 27: (SB-C::TL-XEP SB-C::IR1-CONVERT-LAMBDA-BODY) 28: (SB-C::TL-XEP SB-C::IR1-CONVERT-LAMBDA) 29: (SB-C::TL-XEP SB-C::IR1-CONVERT-INLINE-LAMBDA) 30: (COMMON-LISP::FLET SB-C::CLOSURE-NEEDING-IR1-ENVIRONMENT-FROM-NODE) 31: (SB-C::TL-XEP SB-C::%WITH-IR1-ENVIRONMENT-FROM-NODE) 32: (SB-C::TL-XEP SB-C::TRANSFORM-CALL) 33: (SB-C::TL-XEP SB-C::IR1-TRANSFORM) 34: (SB-C::TL-XEP SB-C::IR1-OPTIMIZE-COMBINATION) 35: (SB-C::TL-XEP SB-C::IR1-OPTIMIZE-BLOCK) 36: (SB-C::TL-XEP SB-C::IR1-OPTIMIZE) 37: (SB-C::TL-XEP SB-C::IR1-OPTIMIZE-UNTIL-DONE) 38: (SB-C::TL-XEP SB-C::IR1-PHASES) 39: (SB-C::TL-XEP SB-C::COMPILE-COMPONENT) 40: (SB-C::TL-XEP SB-C::%COMPILE) 41: (COMMON-LISP::LAMBDA ()) 42: (SB-C::TL-XEP SB-C::%WITH-COMPILATION-UNIT) 43: (SB-C::TL-XEP SB-C::ACTUALLY-COMPILE) 44: (SB-C::TL-XEP SB-C::COMPILE-IN-LEXENV) 45: (SB-C::HAIRY-ARG-PROCESSOR COMMON-LISP::COMPILE) 46: SB-PCL::INSTALL-OPTIMIZED-CONSTRUCTOR 47: (SB-C::VARARGS-ENTRY (COMMON-LISP::LAMBDA (COMMON-LISP::&REST SB-PCL::ARGS))) 48: (SB-PCL::FAST-METHOD IT.BESE.UCW::HANDLE-ACTION-ERROR (COMMON-LISP::ERROR COMMON-LISP::T)) 49: (SB-C::TL-XEP COMMON-LISP::SIGNAL) 50: (SB-C::TL-XEP COMMON-LISP::ERROR) 51: (SB-C::TL-XEP SB-KERNEL::INVALID-ARG-COUNT-ERROR-HANDLER) 52: (SB-C::TL-XEP SB-KERNEL::INTERNAL-ERROR) 53: Foreign function call_into_lisp, fp = 0xf65e7604, ra = 0x8060c51 54: Foreign function funcall2, fp = 0xf65e7624, ra = 0x805b79c 55: Foreign function interrupt_internal_error, fp = 0xf65e77d4, ra = 0x8052592 56: Foreign function sigtrap_handler, fp = 0xf65e7804, ra = 0x805b628 57: Foreign fp = 0xf65e7bc8, ra = 0xffffe600 58: (SB-C::VARARGS-ENTRY (COMMON-LISP::LAMBDA (COMMON-LISP::&REST IT.BESE.ARNESI::ARGS))) 59: (SB-PCL::FAST-METHOD IT.BESE.UCW::BACKTRACK (IT.BESE.UCW::SESSION-FRAME COMMON-LISP::T)) 60: (COMMON-LISP::LAMBDA (IT.BESE.ARNESI::ARGUMENTS)) 61: IT.BESE.ARNESI::DRIVE-INTERPRETER/CC 62: (SB-PCL::FAST-METHOD IT.BESE.UCW::RENDER-ON (IT.BESE.UCW::RESPONSE IT.BESE.UCW::TASK-COMPONENT)) 63: (SB-PCL::FAST-METHOD IT.BESE.UCW::RENDER-ON KEYWORD::WRAPPING (IT.BESE.UCW::RESPONSE IT.BESE.UCW::STANDARD-COMPONENT)) 64: (SB-PCL::FAST-METHOD IT.BESE.UCW::RENDER-ON KEYWORD::WRAPPING (IT.BESE.UCW::RESPONSE IT.BESE.UCW::STANDARD-COMPONENT)) 65: (SB-PCL::FAST-METHOD IT.BESE.UCW::RENDER-ON KEYWORD::WRAPPING (IT.BESE.UCW::RESPONSE IT.BESE.UCW::SIMPLE-WINDOW-COMPONENT)) 66: (SB-PCL::FAST-METHOD IT.BESE.UCW::RENDER-ON KEYWORD::WRAPPING (IT.BESE.UCW::RESPONSE IT.BESE.UCW::STANDARD-COMPONENT)) 67: (COMMON-LISP::LABELS IT.BESE.UCW::RENDER) 68: (SB-PCL::FAST-METHOD IT.BESE.UCW::SERVICE (IT.BESE.UCW::STANDARD-SESSION-FRAME IT.BESE.UCW::REQUEST-CONTEXT)) 69: (COMMON-LISP::LAMBDA (SB-PCL::.PV-CELL. SB-PCL::.NEXT-METHOD-CALL. SB-PCL::.ARG0. SB-PCL::.ARG1.)) 70: (COMMON-LISP::LAMBDA (SB-PCL::.PV-CELL. SB-PCL::.NEXT-METHOD-CALL. SB-PCL::.ARG0. SB-PCL::.ARG1.)) 71: (COMMON-LISP::LAMBDA (SB-PCL::.PV-CELL. SB-PCL::.NEXT-METHOD-CALL. SB-PCL::.ARG0. SB-PCL::.ARG1.)) 72: (SB-PCL::FAST-METHOD IT.BESE.UCW::HANDLE-REQUEST (IT.BESE.UCW::STANDARD-SERVER IT.BESE.UCW::REQUEST IT.BESE.UCW::RESPONSE)) 73: IT.BESE.UCW::HTTPD-WORKER-LOOP/HANDLE 74: IT.BESE.UCW::HTTPD-WORKER-LOOP 75: (COMMON-LISP::LAMBDA ()) 76: Foreign function call_into_lisp, fp = 0xf65e8408, ra = 0x8060c51 77: Foreign function funcall0, fp = 0xf65e8428, ra = 0x805b731 78: Foreign function new_thread_trampoline, fp = 0xf65e8448, ra = 0x8059cca 79: Foreign function (null), fp = 0xf65e84bc, ra = 0xb111d5 __________________________________ Start your day with Yahoo! - Make it your home page! http://www.yahoo.com/r/hs From a_bakic at yahoo.com Sat Oct 8 21:51:21 2005 From: a_bakic at yahoo.com (Aleksandar Bakic) Date: Sat, 8 Oct 2005 14:51:21 -0700 (PDT) Subject: [Bese-devel] a problem with the summation example In-Reply-To: <20051008211758.46744.qmail@web40605.mail.yahoo.com> Message-ID: <20051008215121.22532.qmail@web40610.mail.yahoo.com> I was lucky enough to get a different error when trying the summation example from a different context. The error is: invalid number of arguments: 3 [Condition of type SB-INT:SIMPLE-PROGRAM-ERROR] Restarts: 0: [SHOW-BACKTRACE] Send the client a backtrace page. 1: [RETRY] Retry rendering the component #. 2: [RETRY] Retry rendering the component #. 3: [RETRY] Retry rendering the component #. 4: [RETRY] Retry calling RENDER-ON. 5: [SERVER-ERROR] Send the client an internal server error page. 6: [GENERATE-BACKTRACE-FOR-EMACS] Generate a bug report in Emacs. 7: [TERMINATE-THREAD] Terminate this thread (#) Backtrace: 0: ((SB-PCL::FAST-METHOD SWANK-BACKEND:CALL-WITH-DEBUGGING-ENVIRONMENT (T)) # # #) 1: (SWANK::CALL-WITH-BINDINGS ((*PRINT-PRETTY*) (*PRINT-LEVEL* . 4) (*PRINT-LENGTH* . 10) (*PRINT-CIRCLE* . T) (*PRINT-READABLY*) (*PRINT-PPRINT-DISPATCH* . #) (*PRINT-GENSYM* . T) (*PRINT-BASE* . 10) (*PRINT-RADIX*) (*PRINT-ARRAY* . T) ...) #) 2: (SWANK::DEBUG-IN-EMACS #) 3: ((LAMBDA NIL)) 4: (SWANK::CALL-WITH-REDIRECTED-IO # #) 5: (SWANK::CALL-WITH-CONNECTION # #) 6: ((SB-PCL::FAST-METHOD IT.BESE.UCW::HANDLE-ACTION-ERROR (ERROR T)) # # # (#S(IT.BESE.UCW::BACKTRACE-FRAME :INDEX 4 :DESCRIPTION "(ERROR SB-INT:SIMPLE-PROGRAM-ERROR)" :LOCALS (# #) :SOURCE-LOCATION (:ERROR "The source-path (NIL) is not valid.")) #S(IT.BESE.UCW::BACKTRACE-FRAME :INDEX 5 :DESCRIPTION "(SB-KERNEL::INVALID-ARG-COUNT-ERROR-HANDLER # #.(SB-SYS:INT-SAP #XF6A2CBC8) # (77))" :LOCALS (# # # # #) :SOURCE-LOCATION (:LOCATION # # #)) #S(IT.BESE.UCW::BACKTRACE-FRAME :INDEX 6 :DESCRIPTION "(SB-KERNEL:INTERNAL-ERROR #.(SB-SYS:INT-SAP #XF6A2C898) #)" :LOCALS (# # #) :SOURCE-LOCATION (:LOCATION # # #)) #S(IT.BESE.UCW::BACKTRACE-FRAME :INDEX 7 :DESCRIPTION "(\"foreign function: call_into_lisp\")" :LOCALS NIL :SOURCE-LOCATION (:ERROR "The value # is not of type SB-DI::COMPILED-DEBUG-FUN.")) #S(IT.BESE.UCW::BACKTRACE-FRAME :INDEX 8 :DESCRIPTION "(\"foreign function: funcall2\")" :LOCALS NIL :SOURCE-LOCATION (:ERROR "The value # is not of type SB-DI::COMPILED-DEBUG-FUN.")) #S(IT.BESE.UCW::BACKTRACE-FRAME :INDEX 9 :DESCRIPTION "(\"foreign function: interrupt_internal_error\")" :LOCALS NIL :SOURCE-LOCATION (:ERROR "The value # is not of type SB-DI::COMPILED-DEBUG-FUN.")) #S(IT.BESE.UCW::BACKTRACE-FRAME :INDEX 10 :DESCRIPTION "(\"foreign function: sigtrap_handler\")" :LOCALS NIL :SOURCE-LOCATION (:ERROR "The value # is not of type SB-DI::COMPILED-DEBUG-FUN.")) #S(IT.BESE.UCW::BACKTRACE-FRAME :INDEX 11 :DESCRIPTION "((LAMBDA (SB-PCL::.ARG0. SB-PCL::.ARG1. \"#<...>\" . \"#<...>\")) # NIL (IT.BESE.ARNESI::TOPLEVEL-K))" :LOCALS (# # # # #) :SOURCE-LOCATION (:ERROR " unhandled DEBUG-CONDITION: #\" . \"#<...>\")))> has no debug-block information.")) #S(IT.BESE.UCW::BACKTRACE-FRAME :INDEX 12 :DESCRIPTION "((LAMBDA (&REST IT.BESE.ARNESI::ARGS)))" :LOCALS (#) :SOURCE-LOCATION (:ERROR "Cannot find source location for: # ")) #S(IT.BESE.UCW::BACKTRACE-FRAME :INDEX 13 :DESCRIPTION "((SB-PCL::FAST-METHOD BACKTRACK (IT.BESE.UCW::SESSION-FRAME T)) # # # # NIL)" :LOCALS (# # # # #) :SOURCE-LOCATION (:LOCATION # # #)) ...)) 7: (SIGNAL #) 8: (ERROR SB-INT:SIMPLE-PROGRAM-ERROR) 9: (SB-KERNEL::INVALID-ARG-COUNT-ERROR-HANDLER # #.(SB-SYS:INT-SAP #XF6A2CBC8) # (77)) 10: (SB-KERNEL:INTERNAL-ERROR #.(SB-SYS:INT-SAP #XF6A2C898) #) 11: ("foreign function: call_into_lisp") 12: ("foreign function: funcall2") 13: ("foreign function: interrupt_internal_error") 14: ("foreign function: sigtrap_handler") 15: ((LAMBDA (SB-PCL::.ARG0. SB-PCL::.ARG1. #1="#<...>" . #1#)) # NIL (IT.BESE.ARNESI::TOPLEVEL-K)) 16: ((LAMBDA (&REST IT.BESE.ARNESI::ARGS))) 17: ((SB-PCL::FAST-METHOD BACKTRACK (IT.BESE.UCW::SESSION-FRAME T)) # # # # NIL) 18: ((LAMBDA (IT.BESE.ARNESI::ARGUMENTS)) (# #)) 19: (IT.BESE.ARNESI::DRIVE-INTERPRETER/CC #) 20: ((SB-PCL::FAST-METHOD RENDER-ON (RESPONSE TASK-COMPONENT)) # # # #) 21: ((SB-PCL::FAST-METHOD RENDER-ON :WRAPPING (RESPONSE STANDARD-COMPONENT)) NIL #S(SB-PCL::FAST-METHOD-CALL :FUNCTION # :PV-CELL NIL :NEXT-METHOD-CALL NIL :ARG-INFO (2)) # #) 22: ((SB-PCL::FAST-METHOD RENDER-ON :WRAPPING (RESPONSE STANDARD-COMPONENT)) NIL #S(SB-PCL::FAST-METHOD-CALL :FUNCTION # :PV-CELL NIL :NEXT-METHOD-CALL NIL :ARG-INFO (2)) # #) 23: ((SB-PCL::FAST-METHOD RENDER-ON :WRAPPING (RESPONSE SIMPLE-WINDOW-COMPONENT)) # #S(SB-PCL::FAST-METHOD-CALL :FUNCTION # :PV-CELL NIL :NEXT-METHOD-CALL NIL :ARG-INFO (2)) # #) 24: ((SB-PCL::FAST-METHOD RENDER-ON :WRAPPING (RESPONSE STANDARD-COMPONENT)) NIL #S(SB-PCL::FAST-METHOD-CALL :FUNCTION # :PV-CELL NIL :NEXT-METHOD-CALL #S(SB-PCL::FAST-METHOD-CALL :FUNCTION # :PV-CELL NIL :NEXT-METHOD-CALL NIL :ARG-INFO (2)) :ARG-INFO (2)) # #) 25: ((LABELS IT.BESE.UCW::RENDER)) Alex __________________________________ Yahoo! Mail - PC Magazine Editors' Choice 2005 http://mail.yahoo.com From emailmac at gmail.com Sun Oct 9 01:14:49 2005 From: emailmac at gmail.com (Mac Chan) Date: Sat, 8 Oct 2005 18:14:49 -0700 Subject: [Bese-devel] ucw_dev + arnesi_dev on win32 / lispworks 4.45 In-Reply-To: References: <4877ae6405093016026c8b2b82@mail.gmail.com> Message-ID: <4877ae640510081814rbdbb35jd287e20b4f4c294c@mail.gmail.com> Thank you very much, Asbj?rn. It's working now. I don't know how you can make sense out of the traces :-) I need to keep learning. With Edi's lw-add-on and lw-doc, it's much easily to learn ucw's source code using system browser and class browser. Marco, could you apply the diff? Thanks. BTW, I notice that there are tabs in some of the files and it wouldn't indent properly when using different editors (most emacs user use tab-width 4, lispworks and others by default use 8) Could we prepend / append a mode line in all source file? (use whatever tab-width that you are currently using) ;;; -*- Mode: Lisp; tab-width: 8; indent-tabs-mode: nil; -*- Index: arnesi_dev/src/lexenv.lisp =================================================================== --- arnesi_dev/src/lexenv.lisp (revision 239) +++ arnesi_dev/src/lexenv.lisp (revision 301) @@ -222,15 +222,15 @@ (macro-function (car fenv) environment)) (slot-value environment 'compiler::fenv)))) -#+(and lispworks linux) +#+(and lispworks (or win32 linux)) (defmethod environment-p ((environment lexical::environment)) t) -#+(and lispworks linux) +#+(and lispworks (or win32 linux)) (defmethod lexical-variables ((environment lexical::environment)) (mapcar #'car (slot-value environment 'lexical::variables))) -#+(and lispworks linux) +#+(and lispworks (or win32 linux)) (defmethod lexical-functions ((environment lexical::environment)) (mapcar #'car (slot-value environment 'lexical::functions))) From asbjxrn at bjxrnstad.net Sun Oct 9 15:32:25 2005 From: asbjxrn at bjxrnstad.net (=?ISO-8859-1?Q?Asbj=F8rn_Bj=F8rnstad?=) Date: Sun, 9 Oct 2005 23:32:25 +0800 Subject: [Bese-devel] New form api/initargs for forms? Message-ID: <258922E0-E232-472A-9126-5E0EC6FA8D99@bjxrnstad.net> Hi, are there going to be a more extensive form example that shows off the new functionality of the form api? I'm not smart enough to understand everything that's going on. One thing I've been fumbling with is how to pass initial values to the form elements. It works fine for other components (info-message for example.) but I think the component part of the slots in the form elements is complicating things. (Particulary nice example would be to eg. pass a name of a user, and create a option/select slot with new messages, friends or some other dynamic relationship for that user.) -- -asbjxrn From mb at bese.it Sun Oct 9 21:10:31 2005 From: mb at bese.it (Marco Baringer) Date: Sun, 09 Oct 2005 23:10:31 +0200 Subject: [Bese-devel] unwinding References: <20050926165145.34311.qmail@web40604.mail.yahoo.com> Message-ID: Aleksandar Bakic writes: >> Aside, is catch/throw related to the component call stack at all? Perhaps I > need a different kind of catch/throw... i jsut added catch/throw (but not special variables (yet)) to the interpreter, however catch/throw is not related to the component call stack at all. > I'll answer this one :) (sorry for so many emails). They aren't, but > since (call 'main) creates a new component, the component call stack > of the abandoned component should be gc'd anyway. nope. (call 'main) creates a component and puts the current component (accessed through the lexical variable ucw:self) in the calling component slot, so the call stack will not infact be abandoned (as with the other things this is to ensure that the user can use the 'back' button to return to the previous state). here's another way you could 'flush' all the data in the current session without actually eleting the session (which is still think is what you should do)[1]: (setf self NIL) (with-slots (frames object-table) (context.session *context*) (let ((current-frame (context.current-frame *context*))) (clrhash frames) (setf (gethash (id current-frame) frames) current-frame)) (clrhash object-table)) (call 'main) [nb: main must a window-component for this to work and some of those accessors are internal ucw symbols] if for some reason you delete-session doesn't work (atm i can't remeber how that conversation endede) we should look into making it work (or maybe provide a restart-session function). what you're trying to do seems perfectly reasonable to me, we should make it easier to do. maybe we need a JUMP macro which would work just like CALL but it'd clear out the backtracking and all the various component "stacks"? -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From a_bakic at yahoo.com Mon Oct 10 18:24:28 2005 From: a_bakic at yahoo.com (Aleksandar Bakic) Date: Mon, 10 Oct 2005 11:24:28 -0700 (PDT) Subject: [Bese-devel] a minor default time format fix Message-ID: <20051010182428.48014.qmail@web40623.mail.yahoo.com> diff -rN old-ucw_dev/src/components/time-element.lisp new-ucw_dev/src/components/time-element.lisp 175c175 < :output-format "%Y-%m-%d T %H:%M:%S %Z") --- > :output-format "%Y-%M-%d T %H:%m:%S %Z") Alex __________________________________ Start your day with Yahoo! - Make it your home page! http://www.yahoo.com/r/hs From a_bakic at yahoo.com Mon Oct 10 18:35:31 2005 From: a_bakic at yahoo.com (Aleksandar Bakic) Date: Mon, 10 Oct 2005 11:35:31 -0700 (PDT) Subject: [Bese-devel] unwinding In-Reply-To: Message-ID: <20051010183531.49409.qmail@web40623.mail.yahoo.com> > if for some reason you delete-session doesn't work (atm i can't > remeber how that conversation endede) we should look into making it > work (or maybe provide a restart-session function). what you're trying > to do seems perfectly reasonable to me, we should make it easier to > do. maybe we need a JUMP macro which would work just like CALL but > it'd clear out the backtracking and all the various component > "stacks"? Thanks. I need some more time to get a better feeling for components before I can suggest an API. At the moment, I vaguely see that the component call stack is close to orthogonal to the */cc call stack (it perhaps is not due to backtracking and such). A wild guess: perhaps you could switch from the functional view (call/answer) to a data-structure view (push/pop/embed, etc, perhaps even typed) in the EOPL way if you wanted a fuller control over components. For example, a JUMP would correspond to removing a portion of the stack. Alex __________________________________ Yahoo! Mail - PC Magazine Editors' Choice 2005 http://mail.yahoo.com From ignas.mikalajunas at gmail.com Tue Oct 11 13:55:37 2005 From: ignas.mikalajunas at gmail.com (Ignas Mikalajunas) Date: Tue, 11 Oct 2005 16:55:37 +0300 Subject: [Bese-devel] Minimized form of some tags confuses browsers Message-ID: I was playing with yaclml a bit and spent some time trying to catch a layout bug mozilla ignored:
First i thought that it is a bug in the browser yet according to: http://www.w3.org/TR/xhtml1/#guidelines
should not be used when publishing with content type text/html. I am not sure if this is the right place for such things, but i am attaching a patch to yaclml that makes yaclml use
even if
has no body, and forces
(and other tags that have their end tag forbiden according to w3c) ignore their body. Ignas Mikalaj?nas -------------- next part -------------- A non-text attachment was scrubbed... Name: 20051011133446-c8d19-ba8b14c127c21a90d19779bab9a496db5cf565ad.gz Type: application/x-gzip Size: 1647 bytes Desc: not available URL: From mb at bese.it Tue Oct 11 23:08:26 2005 From: mb at bese.it (Marco Baringer) Date: Wed, 12 Oct 2005 01:08:26 +0200 Subject: [Bese-devel] a problem with the summation example In-Reply-To: <20051008215121.22532.qmail@web40610.mail.yahoo.com> (Aleksandar Bakic's message of "Sat, 8 Oct 2005 14:51:21 -0700 (PDT)") References: <20051008215121.22532.qmail@web40610.mail.yahoo.com> Message-ID: Aleksandar Bakic writes: > I was lucky enough to get a different error when trying the summation example > from a different context. The error is: a couple of people (re drew's "Method Combination issue" post) have been getting similar errors lately, and i'm unable to reproduce the problem. is this still happening? -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From mb at bese.it Tue Oct 11 23:13:08 2005 From: mb at bese.it (Marco Baringer) Date: Wed, 12 Oct 2005 01:13:08 +0200 Subject: [Bese-devel] New form api/initargs for forms? In-Reply-To: <258922E0-E232-472A-9126-5E0EC6FA8D99@bjxrnstad.net> (=?iso-8859-1?Q?Asbj=F8rn_Bj=F8rnstad's?= message of "Sun, 9 Oct 2005 23:32:25 +0800") References: <258922E0-E232-472A-9126-5E0EC6FA8D99@bjxrnstad.net> Message-ID: Asbj?rn Bj?rnstad writes: > Hi, > are there going to be a more extensive form example that shows off > the new functionality of the form api? I'm not smart enough to > understand everything that's going on. > > One thing I've been fumbling with is how to pass initial values to > the form elements. It works fine for other components (info-message > for example.) but I think the component part of the slots in the form > elements is complicating things. (Particulary nice example would be > to eg. pass a name of a user, and create a option/select slot with > new messages, friends or some other dynamic relationship for that > user.) examples are coming (afaik). to answer your immediate question i believe you're looking for the :default-value initarg. -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From a_bakic at yahoo.com Wed Oct 12 20:41:15 2005 From: a_bakic at yahoo.com (Aleksandar Bakic) Date: Wed, 12 Oct 2005 13:41:15 -0700 (PDT) Subject: [Bese-devel] a problem with the summation example In-Reply-To: Message-ID: <20051012204116.23439.qmail@web40627.mail.yahoo.com> > a couple of people (re drew's "Method Combination issue" post) have > been getting similar errors lately, and i'm unable to reproduce the > problem. is this still happening? Yes. (I sent you a 120kB eval/cc debug dump in another email.) I noticed I had (defgeneric/cc start (task)) while the official ucw has (defgeneric start (task)) In the sum.lisp example, start is an action: which defgeneric is right? Without the "/cc", I cannot catcher the "invalid number of arguments: 3" error, but ucw crashes in a similar way. I'll try to read the referenced post once common-lisp.net is up again. Alex __________________________________ Yahoo! Mail - PC Magazine Editors' Choice 2005 http://mail.yahoo.com From mb at bese.it Wed Oct 12 16:50:00 2005 From: mb at bese.it (Marco Baringer) Date: Wed, 12 Oct 2005 18:50:00 +0200 Subject: [Bese-devel] (defentry-point "a regular expression" Message-ID: i need to setup some entrypoints which mathes urls defined by a regular expression like "/catalog/\d+/shipping". i could put this in a url parameter, but due to non-technical requrimentes i can't, and i think it makes for a pretty cool (and usefull) extension. the change itself is fairly trivial and requires only a change to the find-entry-point method. there are two different ways to implement this: 1) builtin standard ucw feature. this means i'll change the method defined on standard-application and ucw will new gain a new dependency (cl-ppcre). 2) a custom application (ala the cookie-session-app). this has the advantage that users who don't want this feature needn't download and bother with cl-ppcre but means that users who do want it may not find it since the examples won't mention it. preferences? -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From svg at surnet.ru Thu Oct 13 07:45:34 2005 From: svg at surnet.ru (Vladimir Sekissov) Date: Thu, 13 Oct 2005 13:45:34 +0600 (YEKST) Subject: [Bese-devel] (defentry-point "a regular expression" In-Reply-To: References: Message-ID: <20051013.134534.200640314.svg@surnet.ru> Good day, mb> i need to setup some entrypoints which mathes urls defined by a mb> regular expression like "/catalog/\d+/shipping". i could put this in a mb> url parameter, but due to non-technical requrimentes i can't, and i mb> think it makes for a pretty cool (and usefull) extension. mb> mb> the change itself is fairly trivial and requires only a change to the mb> find-entry-point method. there are two different ways to implement mb> this: mb> mb> 1) builtin standard ucw feature. this means i'll change the method mb> defined on standard-application and ucw will new gain a new mb> dependency (cl-ppcre). As for me I would prefer this way. CL-PPCRE dependency is not an issue. Handling web-application is mostly handling strings. Handling strings is mostly handling regular expressions. Handling regular expressions in Lisp is mostly CL-PPCRE. mb> mb> 2) a custom application (ala the cookie-session-app). this has the mb> advantage that users who don't want this feature needn't download mb> and bother with cl-ppcre but means that users who do want it may mb> not find it since the examples won't mention it. mb> mb> preferences? Best Regards, Vladimir Sekissov From cjstuij at gmail.com Thu Oct 13 10:03:00 2005 From: cjstuij at gmail.com (Ties Stuij) Date: Thu, 13 Oct 2005 12:03:00 +0200 Subject: [Bese-devel] [BBese-devel] a problem with the summation example&In-Reply-To=20051008215121.22532.qmail@web40610.mail.yahoo.com Message-ID: >> I was lucky enough to get a different error when trying the summation example >> from a different context. The error is: >a couple of people (re drew's "Method Combination issue" post) have >been getting similar errors lately, and i'm unable to reproduce the >problem. is this still happening? Yes, it sure is! To me. Was just gonna post about it, and now i am. Same error as Aleksandar: invalid number of arguments: 3 from the backtrace html: ERROR invalid number of arguments: 3 BACKTRACE [ + ] (ERROR SB-INT:SIMPLE-PROGRAM-ERROR) Description (ERROR SB-INT:SIMPLE-PROGRAM-ERROR) Locals Name Value SB-DEBUG::ARG-0 5 SB-DEBUG::ARG-1 SB-INT:SIMPLE-PROGRAM-ERROR Source (ERROR The source-path (NIL) is not valid.) [ + ] (SB-KERNEL::INVALID-ARG-COUNT-ERROR-HANDLER ... etc..... i'm running sbcl 0.9.5 with the latest ucw_dev and the latest everything on a just updated gentoo system. From sketerpot at gmail.com Thu Oct 13 21:16:35 2005 From: sketerpot at gmail.com (Peter Scott) Date: Thu, 13 Oct 2005 16:16:35 -0500 Subject: [Bese-devel] UCW behind a load balancer? Message-ID: <7e267a920510131416v1f1da8b5l94c851db46c8d7eb@mail.gmail.com> Can UCW be run on several machines behind a load balancer? What needs to be done to do this practically? I believe there was some work being done on serializable continuations, but I haven't checked on it recently. How is that coming along? Thanks, Peter From emailmac at gmail.com Thu Oct 13 22:58:26 2005 From: emailmac at gmail.com (Mac Chan) Date: Thu, 13 Oct 2005 15:58:26 -0700 Subject: [Bese-devel] Re: bese-devel Digest, Vol 22, Issue 12 In-Reply-To: <20051013100009.92765880DB@common-lisp.net> References: <20051013100009.92765880DB@common-lisp.net> Message-ID: <4877ae640510131558y45bf01deh329d7e1063116625@mail.gmail.com> Another vote for 1). It's almost inevitable that you need to use regex on web apps. And I love Edi's packages, they all come with *excellent* documentation. > 1) builtin standard ucw feature. this means i'll change the method > defined on standard-application and ucw will new gain a new > dependency (cl-ppcre). > > ---------- Forwarded message ---------- > From: Vladimir Sekissov > To: mb at bese.it > Date: Thu, 13 Oct 2005 13:45:34 +0600 (YEKST) > Subject: Re: [Bese-devel] (defentry-point "a regular expression" > Good day, > > mb> i need to setup some entrypoints which mathes urls defined by a > mb> regular expression like "/catalog/\d+/shipping". i could put this in a > mb> url parameter, but due to non-technical requrimentes i can't, and i > mb> think it makes for a pretty cool (and usefull) extension. > mb> > mb> the change itself is fairly trivial and requires only a change to the > mb> find-entry-point method. there are two different ways to implement > mb> this: > mb> > mb> 1) builtin standard ucw feature. this means i'll change the method > mb> defined on standard-application and ucw will new gain a new > mb> dependency (cl-ppcre). > > As for me I would prefer this way. CL-PPCRE dependency is not an > issue. Handling web-application is mostly handling strings. Handling > strings is mostly handling regular expressions. Handling regular > expressions in Lisp is mostly CL-PPCRE. > > mb> > mb> 2) a custom application (ala the cookie-session-app). this has the > mb> advantage that users who don't want this feature needn't download > mb> and bother with cl-ppcre but means that users who do want it may > mb> not find it since the examples won't mention it. > mb> > mb> preferences? > > Best Regards, > Vladimir Sekissov > > > > _______________________________________________ > bese-devel mailing list > bese-devel at common-lisp.net > http://common-lisp.net/cgi-bin/mailman/listinfo/bese-devel > > > From bobstopper at bobturf.org Thu Oct 13 23:44:34 2005 From: bobstopper at bobturf.org (Robert Marlow) Date: Fri, 14 Oct 2005 07:44:34 +0800 Subject: [Bese-devel] Re: bese-devel Digest, Vol 22, Issue 12 In-Reply-To: <4877ae640510131558y45bf01deh329d7e1063116625@mail.gmail.com> References: <20051013100009.92765880DB@common-lisp.net> <4877ae640510131558y45bf01deh329d7e1063116625@mail.gmail.com> Message-ID: <87y84x3rtp.wl%bobstopper@bobturf.org> Yeah, I'd say regular expressions would be the general case and non-regexp entry points a special case optimisation. So I vote for (1) too. I'm not sure how useful non-regexp entry points would be other than for optimisation and perhaps simple use of regexp-sensitive characters. If they are useful, perhaps we need several subclasses of entry points to handle each type. If they're useful it would seem that both types may be wanted in the same web-app, in which case having to define two separate application instances may be more clumsy than just defining the difference at the entry points themselves (if I'm correct that you plan on only having the difference coded into the application class). Of course if they're no longer useful, which is probably the case, just ignore me :) At Thu, 13 Oct 2005 15:58:26 -0700, Mac Chan wrote: > > Another vote for 1). It's almost inevitable that you need to use regex > on web apps. > And I love Edi's packages, they all come with *excellent* documentation. > > > 1) builtin standard ucw feature. this means i'll change the method > > defined on standard-application and ucw will new gain a new > > dependency (cl-ppcre). > > > > ---------- Forwarded message ---------- > > From: Vladimir Sekissov > > To: mb at bese.it > > Date: Thu, 13 Oct 2005 13:45:34 +0600 (YEKST) > > Subject: Re: [Bese-devel] (defentry-point "a regular expression" > > Good day, > > > > mb> i need to setup some entrypoints which mathes urls defined by a > > mb> regular expression like "/catalog/\d+/shipping". i could put this in a > > mb> url parameter, but due to non-technical requrimentes i can't, and i > > mb> think it makes for a pretty cool (and usefull) extension. > > mb> > > mb> the change itself is fairly trivial and requires only a change to the > > mb> find-entry-point method. there are two different ways to implement > > mb> this: > > mb> > > mb> 1) builtin standard ucw feature. this means i'll change the method > > mb> defined on standard-application and ucw will new gain a new > > mb> dependency (cl-ppcre). > > > > As for me I would prefer this way. CL-PPCRE dependency is not an > > issue. Handling web-application is mostly handling strings. Handling > > strings is mostly handling regular expressions. Handling regular > > expressions in Lisp is mostly CL-PPCRE. > > > > mb> > > mb> 2) a custom application (ala the cookie-session-app). this has the > > mb> advantage that users who don't want this feature needn't download > > mb> and bother with cl-ppcre but means that users who do want it may > > mb> not find it since the examples won't mention it. > > mb> > > mb> preferences? > > > > Best Regards, > > Vladimir Sekissov > > > > > > > > _______________________________________________ > > bese-devel mailing list > > bese-devel at common-lisp.net > > http://common-lisp.net/cgi-bin/mailman/listinfo/bese-devel > > > > > > > _______________________________________________ > bese-devel mailing list > bese-devel at common-lisp.net > http://common-lisp.net/cgi-bin/mailman/listinfo/bese-devel > From drewc at tech.coop Fri Oct 14 15:32:18 2005 From: drewc at tech.coop (Drew Crampsie) Date: Fri, 14 Oct 2005 08:32:18 -0700 Subject: [Bese-devel] (defentry-point "a regular expression" In-Reply-To: References: Message-ID: <434FCF82.6060101@tech.coop> Marco Baringer wrote: > i need to setup some entrypoints which mathes urls defined by a > regular expression like "/catalog/\d+/shipping". i could put this in a > url parameter, but due to non-technical requrimentes i can't, and i > think it makes for a pretty cool (and usefull) extension. > > the change itself is fairly trivial and requires only a change to the > find-entry-point method. there are two different ways to implement > this: > > 1) builtin standard ucw feature. this means i'll change the method > defined on standard-application and ucw will new gain a new > dependency (cl-ppcre). I'm all for (1) as well, all my images include cl-ppcre as it is. Also, it's very cool and should be part of ucw proper :). drewc > 2) a custom application (ala the cookie-session-app). this has the > advantage that users who don't want this feature needn't download > and bother with cl-ppcre but means that users who do want it may > not find it since the examples won't mention it. > > preferences? > From a_bakic at yahoo.com Sat Oct 15 23:45:07 2005 From: a_bakic at yahoo.com (Aleksandar Bakic) Date: Sat, 15 Oct 2005 16:45:07 -0700 (PDT) Subject: [Bese-devel] a render-on -> render fix Message-ID: <20051015234507.17183.qmail@web40606.mail.yahoo.com> Hi, I suppose "response" should be removed here, too. darcs diff standard-component/standard-component.lisp 120c120 < (return-from render (render response component)))))) --- > (return-from render (render component)))))) Alex __________________________________ Start your day with Yahoo! - Make it your home page! http://www.yahoo.com/r/hs From mb at bese.it Sun Oct 16 10:45:20 2005 From: mb at bese.it (Marco Baringer) Date: Sun, 16 Oct 2005 12:45:20 +0200 Subject: [Bese-devel] a render-on -> render fix In-Reply-To: <20051015234507.17183.qmail@web40606.mail.yahoo.com> (Aleksandar Bakic's message of "Sat, 15 Oct 2005 16:45:07 -0700 (PDT)") References: <20051015234507.17183.qmail@web40606.mail.yahoo.com> Message-ID: Aleksandar Bakic writes: > Hi, > > I suppose "response" should be removed here, too. applied. thanks. -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From emailmac at gmail.com Mon Oct 17 01:36:08 2005 From: emailmac at gmail.com (Mac Chan) Date: Sun, 16 Oct 2005 18:36:08 -0700 Subject: [Bese-devel] minor fix : timezone NIL must be a rational multiple of 1/3600 in the range -24 to 24 Message-ID: <4877ae640510161836j4fb1a247i2d991e96f94144ca@mail.gmail.com> I got this error when loading the example form timezone NIL must be a rational multiple of 1/3600 in the range -24 to 24 Index: time-element.lisp =================================================================== --- time-element.lisp (revision 326) +++ time-element.lisp (working copy) @@ -251,7 +251,7 @@ (defmethod format-lisp-value ((e time-element) value) (multiple-value-bind (second minute hour day month year d dlp zone) (decode-universal-time (or value 0) - (lisp-value (slot-value e 'zone))) + (or (lisp-value (slot-value e 'zone)) 0)) (declare (ignore d dlp)) (let ((ampm (unless (hour24p e) (if (> hour 12) 'pm 'am)))) From a_bakic at yahoo.com Fri Oct 21 01:56:29 2005 From: a_bakic at yahoo.com (Aleksandar Bakic) Date: Thu, 20 Oct 2005 18:56:29 -0700 (PDT) Subject: [Bese-devel] Re: invalid number of arguments: 3 Message-ID: <20051021015629.96369.qmail@web40603.mail.yahoo.com> Hi, I am investigating this error again, in the context of some other but similar code. I verified that it does not occur with CMUCL, just SBCL. I'll continue looking into the ucw/arnesi code; so far, it seems that the place getter, which should be a function of one argument, is passed three arguments. >From backtracking.lisp: (defmacro make-place (form &optional (copyer '#'identity)) "Create a new place around FORM." (with-unique-names (v) `(make-instance 'place :getter (lambda () ,form) :setter (lambda (,v) (setf ,form ,v)) :copyer ,copyer :form ',form))) (also see methods place and (setf place) and from the backtrace: 16: ((LAMBDA (SB-PCL::.ARG0. SB-PCL::.ARG1. #1="#<...>" . #1#)) # NIL (IT.BESE.ARNESI::TOPLEVEL-K)) Locals: SB-DEBUG::ARG-0 = 3 SB-DEBUG::ARG-1 = # SB-DEBUG::ARG-2 = NIL SB-DEBUG::ARG-3 = (IT.BESE.ARNESI::TOPLEVEL-K) SB-DEBUG::ARG-4 = # where the inspector describes the closure: An object. [type: IT.BESE.ARNESI::CLOSURE/CC] -------------------- Class: # Slots: CODE = # ENV = ((:TAG # . #1=(IT.BESE.ARNESI::K-FOR-EVALUATE-LET*/CC OLFO::SERVICE-DATE (# # #) (#) #2=(# # # # # # # # # #) NIL #3=(IT.BESE.ARNESI::TOPLEVEL-K))) (:LET OLFO::SD) (:BLOCK NIL . #1#) . #2#) and CODE as: An object. [type: IT.BESE.ARNESI::LAMBDA-FUNCTION-FORM] -------------------- Class: # Slots: BODY = (#) DECLARES = NIL PARENT = # SOURCE = (LAMBDA NIL OLFO::SD) ; <=== looks like the getter as make-place is passed sd ARGUMENTS = NIL I am guessing that this might have something to do with differences in macro expansion between CMUCL and SBCL... Unless it is a subtle bug in arnesi/ucw. Any hints as to where I should look further? Thanks, Alex __________________________________ Yahoo! Mail - PC Magazine Editors' Choice 2005 http://mail.yahoo.com From a_bakic at yahoo.com Fri Oct 21 14:18:04 2005 From: a_bakic at yahoo.com (Aleksandar Bakic) Date: Fri, 21 Oct 2005 07:18:04 -0700 (PDT) Subject: [Bese-devel] Re: invalid number of arguments: 3 In-Reply-To: <20051021015629.96369.qmail@web40603.mail.yahoo.com> Message-ID: <20051021141804.38698.qmail@web40622.mail.yahoo.com> Hi, I found the bug: there was a sbcl-specific call to apply-lambda/cc with 3 instead of 4 arguments. Here is the patch: diff -rN old-arnesi_dev/src/call-cc/apply.lisp new-arnesi_dev/src/call-cc/apply.lisp 34a35 > (make-instance 'sb-kernel:lexenv) I am not sure if the patch is correct, except that it fixes the problem; I haven't used the dynamic environment yet. Alex __________________________________ Yahoo! FareChase: Search multiple travel sites in one click. http://farechase.yahoo.com From mb at bese.it Fri Oct 21 15:40:29 2005 From: mb at bese.it (Marco Baringer) Date: Fri, 21 Oct 2005 17:40:29 +0200 Subject: [Bese-devel] Re: invalid number of arguments: 3 In-Reply-To: <20051021141804.38698.qmail@web40622.mail.yahoo.com> (Aleksandar Bakic's message of "Fri, 21 Oct 2005 07:18:04 -0700 (PDT)") References: <20051021141804.38698.qmail@web40622.mail.yahoo.com> Message-ID: Aleksandar Bakic writes: > Hi, > > I found the bug: there was a sbcl-specific call to apply-lambda/cc with 3 > instead of 4 arguments. Here is the patch: applied. thanks a lot. -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From a_bakic at yahoo.com Fri Oct 21 15:56:11 2005 From: a_bakic at yahoo.com (Aleksandar Bakic) Date: Fri, 21 Oct 2005 08:56:11 -0700 (PDT) Subject: [Bese-devel] Re: unwinding Message-ID: <20051021155611.86507.qmail@web40626.mail.yahoo.com> Hi, I am now back to trying to find remaining memory leaks. How should I clear unneeded "component stacks" and backtracks (that are not cleared by calling clrhash on frames and object-table of the current session)? Thanks, Alex __________________________________ Yahoo! FareChase: Search multiple travel sites in one click. http://farechase.yahoo.com From a_bakic at yahoo.com Sat Oct 22 00:56:18 2005 From: a_bakic at yahoo.com (Aleksandar Bakic) Date: Fri, 21 Oct 2005 17:56:18 -0700 (PDT) Subject: [Bese-devel] Serving images Message-ID: <20051022005618.21855.qmail@web40608.mail.yahoo.com> Hi, Has anyone tried to implement image serving? What would be a recommended approach? Would it be possible to modify the service method of the standard-session-frame not to render the window-component in this case (or in a similar case, e.g., AJAX)? I mean, an action whose hash is in the src attribute of an img element could output the image. Thanks, Alex __________________________________ Yahoo! Mail - PC Magazine Editors' Choice 2005 http://mail.yahoo.com From luca at pca.it Tue Oct 25 12:27:04 2005 From: luca at pca.it (Luca Capello) Date: Tue, 25 Oct 2005 14:27:04 +0200 Subject: [Bese-devel] YACLML: debianization Message-ID: <871x293hpj.fsf@gismo.pca.it> Hello! Preface: I'm not a programmer and not a "so deep" lisper, so if I wrote something which is completely absurd, please excuse me. YACLML, together with arnesi, fiveaml and qbook, entered Ubuntu 5.10 Breezy. These are the packages that I prepared a long time ago (March 2005) and they are still based on the arch RCS. I'm in the process of migrate them to darcs and to let them enter Debian, but I've some problems with YACLML dependencies... 1) Referring to [1], YACLML *depends* on FiveAM if you want to use the test suite. So, if we want a single Debian package from YACLML, we need to depend on FiveAM. And AFAIK the same happens for the documentation, which needs qbook. The other possibility is to have multiple Debian packages, if it's possible (I propend for this one): cl-yaclml = all the strictly necessary files (depends on ASDF, arnesi and iterate, suggests cl-yaclml-test and cl-yaclml-doc) cl-yaclml-test = test suite (depends on cl-yaclml and FiveAM, suggests cl-yaclml-doc) cl-yaclml-doc = documentation (depends on cl-yaclml and qbook, suggests cl-yaclml-test) This could apply to the other bese CL software in Debian. 2) YACLML depends on UCW since patch: Fri Aug 12 09:09:34 CEST 2005 Marco Baringer * Added feature check for arnesi's "join-strings-return-value" ===== luca at gismo:~$ sbcl This is SBCL 0.9.5.50, an implementation of ANSI Common Lisp. * (asdf:oos 'asdf:load-op 'yaclml) ; loading system definition from /usr/share/common-lisp/systems/yaclml.asd into ; # ; registering # as YACLML ; registering # as YACLML.TEST debugger invoked on a MISSING-COMPONENT in thread #: component "ucw" not found ===== Specifically, this is the /incriminated/ code in yaclml.asd: ===== (defmethod asdf:perform :after ((op t) (system (eql (asdf:find-system :ucw)))) (ensure-system-has-feature :arnesi "join-strings-return-value" "Try pull'ing the latest arnesi or send an email to bese-devel at common-lisp.net")) ===== I think this is a *big* problem: it doesn't let you use YACLML without UCW, which is something like a loop, since UCW depends on YACLML. If we want a Debian package, we must depend on UCW, thus preventing users to install YACLML alone. Am I correct? Solutions? Thx, bye, Gismo / Luca [1] http://common-lisp.net/pipermail/bese-devel/2005-July/000581.html -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 188 bytes Desc: not available URL: From mb at bese.it Wed Oct 26 11:20:51 2005 From: mb at bese.it (Marco Baringer) Date: Wed, 26 Oct 2005 13:20:51 +0200 Subject: [Bese-devel] ucw_public Message-ID: i've created a world writable ucw repository located at: http://uncommon-web.com/repos/ucw_public/ you can apply patch to that repo via this cgi script: http://uncommon-web.com/cgi-bin/ucw_public_apply.cgi this is an experiment, if it works out good, if it doesn't (if starts getting spammed or if it swamps the box or whatever) i'll take it down. there is no policy as to what you should, or shouldn't, do to that repo (wild wild coding). atm you can only apply patchs to that repo, there's no way to unpull. happy hacking. p.s. - i've also setup darcsweb for the various ucw repos here: http://uncommon-web.com/darcsweb/darcsweb.cgi -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From a_bakic at yahoo.com Wed Oct 26 14:41:46 2005 From: a_bakic at yahoo.com (Aleksandar Bakic) Date: Wed, 26 Oct 2005 07:41:46 -0700 (PDT) Subject: [Bese-devel] ucw_public In-Reply-To: Message-ID: <20051026144146.57135.qmail@web40601.mail.yahoo.com> > there is no policy as to what you should, or shouldn't, do to > that repo (wild wild coding). I was going to suggest the opposite: how about trying to plan the ucw development (maybe using bugzilla)? It seems to be quite a movable target for some uses. Will there be any changes to the way arnesi_dev and ucw_dev are handled? Thanks, Alex __________________________________ Start your day with Yahoo! - Make it your home page! http://www.yahoo.com/r/hs From mb at bese.it Wed Oct 26 17:19:18 2005 From: mb at bese.it (Marco Baringer) Date: Wed, 26 Oct 2005 19:19:18 +0200 Subject: [Bese-devel] ucw_public In-Reply-To: <20051026144146.57135.qmail@web40601.mail.yahoo.com> (Aleksandar Bakic's message of "Wed, 26 Oct 2005 07:41:46 -0700 (PDT)") References: <20051026144146.57135.qmail@web40601.mail.yahoo.com> Message-ID: Aleksandar Bakic writes: >> there is no policy as to what you should, or shouldn't, do to >> that repo (wild wild coding). > > I was going to suggest the opposite: how about trying to plan the ucw > development (maybe using bugzilla)? It seems to be quite a movable target for > some uses. Will there be any changes to the way arnesi_dev and ucw_dev are > handled? i wasn't planning on it. it's not that i wouldn't like ucw and arnesi to be stable repos (instead of just "old") and leave _dev as the acutal development repos, but i really don't have the time to deal with it. if anyone feels liking deciding when ucw is stable (fsov "stable") and moving that into ucw (and arnesi) and tagging it i'll give whatever support (write perms, support, etc.) is neccessary. -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From drewc at tech.coop Thu Oct 27 11:42:45 2005 From: drewc at tech.coop (Drew Crampsie) Date: Thu, 27 Oct 2005 04:42:45 -0700 Subject: [Bese-devel] ucw_public In-Reply-To: References: <20051026144146.57135.qmail@web40601.mail.yahoo.com> Message-ID: <4360BD35.60107@tech.coop> Marco Baringer wrote: > Aleksandar Bakic writes: > > >>>there is no policy as to what you should, or shouldn't, do to >>>that repo (wild wild coding). >> >>I was going to suggest the opposite: how about trying to plan the ucw >>development (maybe using bugzilla)? It seems to be quite a movable target for >>some uses. Will there be any changes to the way arnesi_dev and ucw_dev are >>handled? > > > i wasn't planning on it. it's not that i wouldn't like ucw and arnesi > to be stable repos (instead of just "old") and leave _dev as the > acutal development repos, but i really don't have the time to deal > with it. if anyone feels liking deciding when ucw is stable (fsov > "stable") and moving that into ucw (and arnesi) and tagging it i'll > give whatever support (write perms, support, etc.) is neccessary. I have plans to release a 'stable' version of UCW included with LoL, and make the whole thing asdf-installable. If anybody wants to help, the first step would be to update my ucw repo (versions.tech.coop) to the latest _dev, and then make LoL work with that. I'm in the middle of a busy project, but should have some time next month for this sort of thing. I'll keep the list posted. drewc From mb at bese.it Thu Oct 27 07:56:36 2005 From: mb at bese.it (Marco Baringer) Date: Thu, 27 Oct 2005 09:56:36 +0200 Subject: [Bese-devel] ucw_public In-Reply-To: <4360BD35.60107@tech.coop> (Drew Crampsie's message of "Thu, 27 Oct 2005 04:42:45 -0700") References: <20051026144146.57135.qmail@web40601.mail.yahoo.com> <4360BD35.60107@tech.coop> Message-ID: Drew Crampsie writes: > I have plans to release a 'stable' version of UCW included with LoL, > and make the whole thing asdf-installable. If anybody wants to help, > the first step would be to update my ucw repo (versions.tech.coop) to > the latest _dev, and then make LoL work with that. along these lines, if anyone has a version of ucw_dev which uses LoL's presentation stuff instead of ucw's i'd be really happy to merge it in. -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From mb at bese.it Thu Oct 27 08:39:06 2005 From: mb at bese.it (Marco Baringer) Date: Thu, 27 Oct 2005 10:39:06 +0200 Subject: [Bese-devel] YACLML: debianization In-Reply-To: <871x293hpj.fsf@gismo.pca.it> (Luca Capello's message of "Tue, 25 Oct 2005 14:27:04 +0200") References: <871x293hpj.fsf@gismo.pca.it> Message-ID: Luca Capello writes: > 1) Referring to [1], YACLML *depends* on FiveAM if you want to use the > test suite. So, if we want a single Debian package from YACLML, we > need to depend on FiveAM. And AFAIK the same happens for the > documentation, which needs qbook. > > The other possibility is to have multiple Debian packages, if it's > possible (I propend for this one): > > cl-yaclml = all the strictly necessary files > (depends on ASDF, arnesi and iterate, > suggests cl-yaclml-test and cl-yaclml-doc) > cl-yaclml-test = test suite > (depends on cl-yaclml and FiveAM, > suggests cl-yaclml-doc) > cl-yaclml-doc = documentation > (depends on cl-yaclml and qbook, > suggests cl-yaclml-test) is this a normal way of doing things? if so this is what i'd do. > > 2) YACLML depends on UCW since patch: > > Fri Aug 12 09:09:34 CEST 2005 Marco Baringer > * Added feature check for arnesi's "join-strings-return-value" stupid stupid mistake. fixed. -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From mb at bese.it Thu Oct 27 08:46:01 2005 From: mb at bese.it (Marco Baringer) Date: Thu, 27 Oct 2005 10:46:01 +0200 Subject: [Bese-devel] UCW behind a load balancer? References: <7e267a920510131416v1f1da8b5l94c851db46c8d7eb@mail.gmail.com> Message-ID: Peter Scott writes: > Can UCW be run on several machines behind a load balancer? What needs > to be done to do this practically? there are two different kinds of load balancing you could do: 1) multiple machines but sessions don't move (so losing a machine means losing sessions). this is doable now by putting pound in front of the ucw farm and having it load balance on cookies (so you must use the cookie-session-application). 2) multiple machines with sessions in a memcache (or other distributed db). this is slightly less trivial. it requires serializing sessions, changing ucw's standard-session to send updates to memcache and changing standard-application to get sessions from memcache and not the application's session-table. so you'd basically define two new clasess, load-balancing-session and load-balancing-application. and you'd define methods on these generic functions: (find-session application) (make-new-session application) (remove-expired-sessions application) (delete-session application) (expire-session session) [andd maybe a couple of other thins] the only extra thing you'll need to worry about is what to do if two requests, within the same session, arrive simutaneously to two different machines. this requires some thought (ha! ha! ha!) > I believe there was some work being done on serializable > continuations, but I haven't checked on it recently. How is that > coming along? i had an immediate need for them, but then we (the client and I) decided to solve it differently (the client thought their needs were greater than they turned out to be and the hosting costs were much higher than we initially thought), i've basically put it on hold. however you can pass a ucw session to cl-store:store (after making a small change to the walker) and write it out to disk. when loading it back in you need a very minimal amout of glue to put the session back into the app. if you need it though i'd be more than happy to provide whatever support it takes. p.s. - sorry this took so long to answer. -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From luca at pca.it Thu Oct 27 09:00:39 2005 From: luca at pca.it (Luca Capello) Date: Thu, 27 Oct 2005 11:00:39 +0200 (CEST) Subject: [Bese-devel] darcs patch: remove debian/ folder Message-ID: <20051027090039.21D8ABF02@gismo.pca.it> Thu Oct 27 10:51:58 CEST 2005 Luca Capello * remove debian/ folder The CL-Debian group decided to avoid Debian native packages. http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=310665 -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: text/x-darcs-patch Size: 9616 bytes Desc: A darcs patch for your repository! URL: From jan at rychter.com Thu Oct 27 11:13:04 2005 From: jan at rychter.com (Jan Rychter) Date: Thu, 27 Oct 2005 13:13:04 +0200 Subject: [Bese-devel] UCW file upload example In-Reply-To: (Marco Baringer's message of "Wed, 31 Aug 2005 13:49:56 +0200") References: Message-ID: Marco: [about uploading directly to files, instead of into memory] > Jan Rychter writes: > > Has anybody worked on this? I've just hit the same problem. > > i will need it soon-ish (mid september maybe) so it'll happen around > then, but i can't dedicate any time to it now. Just wondering -- do you expect to work on this anytime soon? --J. From asbjxrn at bjxrnstad.net Thu Oct 27 11:25:49 2005 From: asbjxrn at bjxrnstad.net (=?ISO-8859-1?Q?Asbj=F8rn_Bj=F8rnstad?=) Date: Thu, 27 Oct 2005 19:25:49 +0800 Subject: [Bese-devel] ucw_public In-Reply-To: References: <20051026144146.57135.qmail@web40601.mail.yahoo.com> <4360BD35.60107@tech.coop> Message-ID: <0873C94F-96C9-4789-8DF5-8C04AE1CDD2A@bjxrnstad.net> On 27 Oct 2005, at 3:56 PM, Marco Baringer wrote: > Drew Crampsie writes: > > >> I have plans to release a 'stable' version of UCW included with LoL, >> and make the whole thing asdf-installable. If anybody wants to help, >> the first step would be to update my ucw repo (versions.tech.coop) to >> the latest _dev, and then make LoL work with that. >> > > along these lines, if anyone has a version of ucw_dev which uses LoL's > presentation stuff instead of ucw's i'd be really happy to merge it > in. Further along these lines, or maybe this is more across those lines. How does the recent presentation functionality patch fit in with LoL? (I have only glanced at what the recent patch is doing, but it sounds like there is some duplication of effort?) -- -asbjxrn From drewc at tech.coop Fri Oct 28 03:12:41 2005 From: drewc at tech.coop (Drew Crampsie) Date: Thu, 27 Oct 2005 20:12:41 -0700 Subject: [Bese-devel] ucw_public In-Reply-To: <0873C94F-96C9-4789-8DF5-8C04AE1CDD2A@bjxrnstad.net> References: <20051026144146.57135.qmail@web40601.mail.yahoo.com> <4360BD35.60107@tech.coop> <0873C94F-96C9-4789-8DF5-8C04AE1CDD2A@bjxrnstad.net> Message-ID: <43619729.8080909@tech.coop> Asbj?rn Bj?rnstad wrote: > > On 27 Oct 2005, at 3:56 PM, Marco Baringer wrote: > >> Drew Crampsie writes: >> >> >>> I have plans to release a 'stable' version of UCW included with LoL, >>> and make the whole thing asdf-installable. If anybody wants to help, >>> the first step would be to update my ucw repo (versions.tech.coop) to >>> the latest _dev, and then make LoL work with that. >>> >> >> along these lines, if anyone has a version of ucw_dev which uses LoL's >> presentation stuff instead of ucw's i'd be really happy to merge it >> in. > > > Further along these lines, or maybe this is more across those lines. > How does the recent presentation functionality patch fit in with LoL? > (I have only glanced at what the recent patch is doing, but it sounds > like there is some duplication of effort?) > I have no idea. The version of presentations.lisp (renamed static-presentations.lisp) was stolen from ucw before those patches, and i don't really use anything 'cept as base classes for the mewa classes. I've never used the UCW presentations for anything beyond playing (although i have a deep intimate knowlege of their inner workings), as they were never sufficient for my purposes. Getting the UCW presentations example working with the lol static-presentations.lisp should be easy enough, is that is indeed what we want to do. Even better would be to re-write the example using LoL proper, although i am probably the only person capable of doing that, and it's not on my list of things to do. Any comments as to the best course of action? drewc From mb at bese.it Thu Oct 27 12:40:23 2005 From: mb at bese.it (Marco Baringer) Date: Thu, 27 Oct 2005 14:40:23 +0200 Subject: [Bese-devel] UCW file upload example In-Reply-To: (Jan Rychter's message of "Thu, 27 Oct 2005 13:13:04 +0200") References: Message-ID: Jan Rychter writes: > Just wondering -- do you expect to work on this anytime soon? probably not, sorry. -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From a_bakic at yahoo.com Thu Oct 27 12:54:35 2005 From: a_bakic at yahoo.com (Aleksandar Bakic) Date: Thu, 27 Oct 2005 05:54:35 -0700 (PDT) Subject: [Bese-devel] UCW file upload example In-Reply-To: Message-ID: <20051027125435.61937.qmail@web40601.mail.yahoo.com> > > Just wondering -- do you expect to work on this anytime soon? > > probably not, sorry. I recently patched some packages (including alan-araneida, clsql, ucw) locally to make them allow for sbcl+unicode upload and serve (binary) images. I might tackle this feature, too, but probably not very soon (could be in a few weeks). I have sent some of the patches to some people, but I am not sure I can use the new repository (for wild coding) soon; so, if anyone needs the patches or info on missing features, we can discuss them on the list. Alex PS. A bit off-the-topic (maybe not): has anyone tried using cl-typesetting/cl-pdf with sbcl+unicode? I'd like to use :utf-8 as the external format with the help of unicode fonts. __________________________________ Yahoo! FareChase: Search multiple travel sites in one click. http://farechase.yahoo.com From jan at rychter.com Thu Oct 27 15:30:45 2005 From: jan at rychter.com (Jan Rychter) Date: Thu, 27 Oct 2005 17:30:45 +0200 Subject: [Bese-devel] ucw_public In-Reply-To: (Marco Baringer's message of "Wed, 26 Oct 2005 13:20:51 +0200") References: Message-ID: >>>>> "Marco" == Marco Baringer : Marco> i've created a world writable ucw repository located at: Marco> http://uncommon-web.com/repos/ucw_public/ Marco> you can apply patch to that repo via this cgi script: Marco> http://uncommon-web.com/cgi-bin/ucw_public_apply.cgi Marco> this is an experiment, if it works out good, if it doesn't (if Marco> starts getting spammed or if it swamps the box or whatever) i'll Marco> take it down. there is no policy as to what you should, or Marco> shouldn't, do to that repo (wild wild coding). atm you can only Marco> apply patchs to that repo, there's no way to unpull. Marco> happy hacking. Do you plan to periodically check this repository and pull things into ucw_dev? Should we treat this as a way of getting changes in? (even for small things, typo fixes, etc) --J. From mb at bese.it Thu Oct 27 15:34:26 2005 From: mb at bese.it (Marco Baringer) Date: Thu, 27 Oct 2005 17:34:26 +0200 Subject: [Bese-devel] ucw_public In-Reply-To: (Jan Rychter's message of "Thu, 27 Oct 2005 17:30:45 +0200") References: Message-ID: Jan Rychter writes: > Do you plan to periodically check this repository and pull things into > ucw_dev? Should we treat this as a way of getting changes in? (even for > small things, typo fixes, etc) yes, i have subscribed to the rss feed and will pull things into ucw_dev (though sending an email to bese-devel wouldn't hurt). -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From waldo at trianet.net Thu Oct 27 15:15:49 2005 From: waldo at trianet.net (Waldo Rubinstein) Date: Thu, 27 Oct 2005 11:15:49 -0400 Subject: [Bese-devel] Test after Hurricane Wilma Message-ID: Hi guys. Please disregard this. I'm testing connectivity after being down due to Hurricane Wilma. Thanks, Waldo From luca at pca.it Fri Oct 28 10:40:18 2005 From: luca at pca.it (Luca Capello) Date: Fri, 28 Oct 2005 12:40:18 +0200 (CEST) Subject: [Bese-devel] darcs patch: remove debian/ folder Message-ID: <20051028104018.60AF1CC75@gismo.pca.it> Fri Oct 28 12:38:02 CEST 2005 Luca Capello * remove debian/ folder The CL-Debian group decided to avoid Debian native packages. http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=310665 -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: text/x-darcs-patch Size: 24228 bytes Desc: A darcs patch for your repository! URL: From luca at pca.it Fri Oct 28 10:43:14 2005 From: luca at pca.it (Luca Capello) Date: Fri, 28 Oct 2005 12:43:14 +0200 (CEST) Subject: [Bese-devel] darcs patch: remove debian/ folder Message-ID: <20051028104314.BB168CC75@gismo.pca.it> Fri Oct 28 12:42:01 CEST 2005 Luca Capello * remove debian/ folder The CL-Debian group decided to avoid Debian native packages. http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=310665 -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: text/x-darcs-patch Size: 8287 bytes Desc: A darcs patch for your repository! URL: From luca at pca.it Fri Oct 28 10:45:14 2005 From: luca at pca.it (Luca Capello) Date: Fri, 28 Oct 2005 12:45:14 +0200 (CEST) Subject: [Bese-devel] darcs patch: remove debian/ folder Message-ID: <20051028104514.CC843CC75@gismo.pca.it> Fri Oct 28 12:44:14 CEST 2005 Luca Capello * remove debian/ folder The CL-Debian group decided to avoid Debian native packages. http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=310665 -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: text/x-darcs-patch Size: 6966 bytes Desc: A darcs patch for your repository! URL: From luca at pca.it Fri Oct 28 11:45:00 2005 From: luca at pca.it (Luca Capello) Date: Fri, 28 Oct 2005 13:45:00 +0200 Subject: [Bese-devel] YACLML: debianization In-Reply-To: (Marco Baringer's message of "Thu, 27 Oct 2005 10:39:06 +0200") References: <871x293hpj.fsf@gismo.pca.it> Message-ID: <87br199877.fsf@gismo.pca.it> Hello! I'm sorry for the cross-posting, but the CL-Debian mailing-list is the best place about packaging CL software for Debian. Moreover, I'd like an advice from the Debian people involved in CL before finishing to package Marco's software. And I'm sorry for the long post O:-) On Thu 27 Oct 2005 10:39 +0200, Marco Baringer wrote: > Luca Capello writes: > >> 1) Referring to [1], YACLML *depends* on FiveAM if you want to use >> the test suite. So, if we want a single Debian package from >> YACLML, we need to depend on FiveAM. And AFAIK the same happens >> for the documentation, which needs qbook. >> >> The other possibility is to have multiple Debian packages, if >> it's possible (I propend for this one): >> >> cl-yaclml = all the strictly necessary files >> (depends on ASDF, arnesi and iterate, >> suggests cl-yaclml-test and cl-yaclml-doc) >> cl-yaclml-test = test suite >> (depends on cl-yaclml and FiveAM, >> suggests cl-yaclml-doc) >> cl-yaclml-doc = documentation >> (depends on cl-yaclml and qbook, >> suggests cl-yaclml-test) > > is this a normal way of doing things? if so this is what i'd do. While it's an usual thing to split a -doc package, I think that for the test suite there isn't a strict policy. Searching in the package archive gives the following. I sorted out the relevant packages ;-) ===== luca at gismo:~$ apt-cache search test atlas-test - Automatically Tuned Linear Algebra Software,test programs blacs-pvm-test - Basic Linear Algebra Comm. Subprograms - Test files for PVM blas-test - Basic Linear Algebra Subroutines, testing programs lapack-test - a library of linear algebra routines - testing programs lapack3-test - library of linear algebra routines 3 - testing programs refblas3-test - Basic Linear Algebra Subroutines 3, testing programs ultrapossum-test - UltraPossum SI Testing Framework xmldiff-test - xmldiff's test files blacs-lam-test - Basic Linear Algebra Comm. Subprograms - Test files for LAM blacs-mpich-test - Basic Linear Algebra Comm. Subprograms - Test files for MPICH blacs-test-common - Test data for BLACS testers cl-ansi-tests - Conformance tests for ANSI Common Lisp cl-uffi-tests - Regression tests for UFFI Common Lisp Library clamav-testfiles - use these files to test that your Antivirus program works ltp-commands-test - Command tests for the Linux Test Project ltp-disc-test - Disk I/O tests for the Linux Test Project ltp-kernel-test - kernel tests for the Linux Test Project ltp-misc-test - Misc. tests for the Linux Test Project ltp-network-test - Network tests for the Linux Test Project pylint-test - pylint's test files scalapack-lam-test - Scalable Linear Algebra Package - Test files for LAM scalapack-mpich-test - Scalable Linear Algebra Package - Test files for MPICH scalapack-pvm-test - Scalable Linear Algebra Package - Test files for PVM scalapack-test-common - Test data for ScaLAPACK testers typo3-testsite - A site package to show the abilities of TYPO3 zope-testcase - unit testing framework and test case for Zope parmetis-test - Parallel Graph Partitioning and Sparse Matrix Ordering Tests atlas3-test - Automatically Tuned Linear Algebra Software,test programs axiom-test - A general purpose computer algebra system: regression test inputs cl-sql-tests - Testing suite for CLSQL maxima-test - A fairly complete computer algebra system-- test suite php-simpletest - Unit testing and web testing framework for PHP sqlrelay-test - SQL Relay tests webauth-tests - Tests for the WebAuth authentication modules luca at gismo:~$ ===== Basically and AFAIK, we can decide whatever we want. Considering the space occupied by each package, we have (I just removed _darcs/ folder in each package): ===== luca at gismo:~/Hacking/cl-debian/repository$ du -h arnesi-test/ 16K arnesi-test/docs 68K arnesi-test/src/call-cc 312K arnesi-test/src 48K arnesi-test/t 396K arnesi-test/ luca at gismo:~/Hacking/cl-debian/repository$ du -h fiveam-test/ 68K fiveam-test/src 16K fiveam-test/t 104K fiveam-test/ luca at gismo:~/Hacking/cl-debian/repository$ du -h qbook-test/ 44K qbook-test/src 60K qbook-test/ luca at gismo:~/Hacking/cl-debian/repository$ du -h yaclml-test/ 24K yaclml-test/src/tags 64K yaclml-test/src/tal 128K yaclml-test/src 8.0K yaclml-test/t/root-a 12K yaclml-test/t/root-b 52K yaclml-test/t 196K yaclml-test/ luca at gismo:~/Hacking/cl-debian/repository$ ===== The simple solution will be to strictly depend on every software needed to *completely* use the package we're installing. So, YACLML should depends on ASDF/Common-Lisp-Controller, arnesi and iterate (to compile), plus FiveAM (for the test suite) and qbook (for the docs). This will lead to about 170K more space on disk (FiveAM and qbook), which is quite nothing :-) Obviously, if the dependencies for the /extra/ packages will grow in size (the test suite and the docs are not *strictly* necessary), we can split the package in the future. Now, reconsidering what I just wrote, I think that the simple solution is the best ATM. Suggestions? Peter, your opinion? Thx, bye, Gismo / Luca -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 188 bytes Desc: not available URL: From luca at pca.it Fri Oct 28 11:49:42 2005 From: luca at pca.it (Luca Capello) Date: Fri, 28 Oct 2005 13:49:42 +0200 Subject: [Bese-devel] darcs patch: remove debian/ folder In-Reply-To: <20051028104018.60AF1CC75@gismo.pca.it> (Luca Capello's message of "Fri, 28 Oct 2005 12:40:18 +0200 (CEST)") References: <20051028104018.60AF1CC75@gismo.pca.it> Message-ID: <8764rh97zd.fsf@gismo.pca.it> Hello! On Fri 28 Oct 2005 12:40 +0200, Luca Capello wrote: > Fri Oct 28 12:38:02 CEST 2005 Luca Capello > * remove debian/ folder Arnesi: should this applied to arnesi stable as well? I think so, as it doesn't touch the core of arnesi and it should be harmless ;-) Thx, bye, Gismo / Luca -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 188 bytes Desc: not available URL: From jan at rychter.com Fri Oct 28 12:43:53 2005 From: jan at rychter.com (Jan Rychter) Date: Fri, 28 Oct 2005 14:43:53 +0200 Subject: [Bese-devel] require a login Message-ID: Simple question: how do you require a login into your application? The wiki example isn't quite enough for me -- the "UCW way" example requires login in an action, while I require one before showing the main component, e.g. in the entry point. I quickly run into issues there: you need a window component if it's to be called from an entry point, and there is no way to answer (go back to an entry point). The other wiki example (using multiple entry points) quickly gets very complicated if what you have is not a single login, but two or more steps that the user has to go through before getting to the main application. Is there a way to achieve this using :before methods in normal application flow, for example? --J. From mb at bese.it Fri Oct 28 13:21:10 2005 From: mb at bese.it (Marco Baringer) Date: Fri, 28 Oct 2005 15:21:10 +0200 Subject: [Bese-devel] require a login In-Reply-To: (Jan Rychter's message of "Fri, 28 Oct 2005 14:43:53 +0200") References: Message-ID: Jan Rychter writes: > Simple question: how do you require a login into your application? > > The wiki example isn't quite enough for me -- the "UCW way" example > requires login in an action, while I require one before showing the main > component, e.g. in the entry point. I quickly run into issues there: you > need a window component if it's to be called from an entry point, and > there is no way to answer (go back to an entry point). there should be. this: (defentry-point "index.ucw" (:application *idi-backoffice*) () (call 'backoffice-login) (call 'backoffice)) is what i'm currently using for one of my apps (though that app is running with a few week old copy of ucw so maybe i've broken something in the meantime). obviously backoffice-login is a window component and when the auth credentials are good it answer (but not before). > The other wiki example (using multiple entry points) quickly gets very > complicated if what you have is not a single login, but two or more > steps that the user has to go through before getting to the main > application. agreed. -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From mb at bese.it Fri Oct 28 13:26:00 2005 From: mb at bese.it (Marco Baringer) Date: Fri, 28 Oct 2005 15:26:00 +0200 Subject: [Bese-devel] require a login In-Reply-To: (Jan Rychter's message of "Fri, 28 Oct 2005 14:43:53 +0200") References: Message-ID: Jan Rychter writes: > Simple question: how do you require a login into your application? there other option, which is a bit longer (requires more wrapper component) nice if you have many entry points, is something like this: ;; setup a task component which always requires a login (defcomponent my-generic-task (task-component) ()) (defmethod start :before ((task my-generic-task)) (call 'login)) ;; each entry-point calls a task component which hands control off to ;; the actual worker components. (defcomponent statistics (my-generic-task) () (:entry-point "stats.ucw" ())) (defmethod start ((s statistics)) ;; stats-menu is the "real" component with the home page, the navbar, etc. (call 'stats-menu)) hth. -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From jan at rychter.com Fri Oct 28 15:19:21 2005 From: jan at rychter.com (Jan Rychter) Date: Fri, 28 Oct 2005 17:19:21 +0200 Subject: [Bese-devel] require a login In-Reply-To: (Marco Baringer's message of "Fri, 28 Oct 2005 15:21:10 +0200") References: Message-ID: Marco wrote: > Jan Rychter writes: > > Simple question: how do you require a login into your application? > > > > The wiki example isn't quite enough for me -- the "UCW way" example > > requires login in an action, while I require one before showing the main > > component, e.g. in the entry point. I quickly run into issues there: you > > need a window component if it's to be called from an entry point, and > > there is no way to answer (go back to an entry point). > > there should be. this: > > (defentry-point "index.ucw" (:application *idi-backoffice*) () > (call 'backoffice-login) > (call 'backoffice)) > > is what i'm currently using for one of my apps (though that app is > running with a few week old copy of ucw so maybe i've broken something > in the meantime). > > obviously backoffice-login is a window component and when the auth > credentials are good it answer (but not before). Hmm. I was getting this problem when answering: The slot IT.BESE.UCW::CALLING-COMPONENT is unbound in the object #. Ah, can now I see why. The problem was that I first needed a login form, so I created an object subclassing form-element. But to call it from an entry point, I needed it to be a window-component. I also wanted it to be TAL-templateable. Subclassing both form-element and window-component wouldn't work, so I made a window-component which contains the form. But then the form object can't answer, because it is not the one being called. I'm documenting this mostly so that you can see where newbies can get stuck. --J. From mb at bese.it Fri Oct 28 15:58:27 2005 From: mb at bese.it (Marco Baringer) Date: Fri, 28 Oct 2005 17:58:27 +0200 Subject: [Bese-devel] require a login In-Reply-To: (Jan Rychter's message of "Fri, 28 Oct 2005 17:19:21 +0200") References: Message-ID: Jan Rychter writes: > Ah, can now I see why. The problem was that I first needed a login form, > so I created an object subclassing form-element. But to call it from an > entry point, I needed it to be a window-component. I also wanted it to > be TAL-templateable. Subclassing both form-element and window-component > wouldn't work, so I made a window-component which contains the form. But > then the form object can't answer, because it is not the one being > called. for reasons (of which this is one) i'm going to remove the requirement that components called in an entry-point be window components. > I'm documenting this mostly so that you can see where newbies can get > stuck. thanks alot. -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From mb at bese.it Fri Oct 28 17:31:06 2005 From: mb at bese.it (Marco Baringer) Date: Fri, 28 Oct 2005 19:31:06 +0200 Subject: [Bese-devel] require a login In-Reply-To: (Marco Baringer's message of "Fri, 28 Oct 2005 17:58:27 +0200") References: Message-ID: "Marco Baringer" writes: > Jan Rychter writes: > >> Ah, can now I see why. The problem was that I first needed a login form, >> so I created an object subclassing form-element. But to call it from an >> entry point, I needed it to be a window-component. I also wanted it to >> be TAL-templateable. Subclassing both form-element and window-component >> wouldn't work, so I made a window-component which contains the form. But >> then the form object can't answer, because it is not the one being >> called. > > for reasons (of which this is one) i'm going to remove the requirement > that components called in an entry-point be window components. ok, i did it. window-components are gone (though simple-window-component is usefull and remains). the patch has been pushed but was tested VERY lightly and will require a complete recompile. -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From mb at bese.it Fri Oct 28 17:38:33 2005 From: mb at bese.it (Marco Baringer) Date: Fri, 28 Oct 2005 19:38:33 +0200 Subject: [Bese-devel] ucw feature request Message-ID: this is something i think would be cool but don't have the time to do myself: in ucw apps the concept of a 'page' loses some meaning, often i'll have an entire application under a single query-path (/index.ucw). one of the things this renders useless is awstats, anybody feel like teaching ucw to record (using whatever means you prefer), in combined log format, which component is being called? i would be usefull, at least in same contexts, to be able to know what parts of the app are being used the most. -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From cl-debian at pvaneynd.mailworks.org Fri Oct 28 20:20:32 2005 From: cl-debian at pvaneynd.mailworks.org (Peter Van Eynde) Date: Fri, 28 Oct 2005 22:20:32 +0200 Subject: [cl-debian] Re: [Bese-devel] YACLML: debianization In-Reply-To: <87br199877.fsf@gismo.pca.it> References: <871x293hpj.fsf@gismo.pca.it> <87br199877.fsf@gismo.pca.it> Message-ID: <200510282220.33939.cl-debian@pvaneynd.mailworks.org> Hi people, On Friday 28 October 2005 13:45, Luca Capello wrote: > > [splitting packages] > > is this a normal way of doing things? if so this is what i'd do. > > While it's an usual thing to split a -doc package, I think that for > the test suite there isn't a strict policy Well the policy gets involved because you should have a separate package if the architecture independent part (/usr/share/foo) gets 'too big'. This resulted in the splitting of sbcl into sbcl and sbcl-doc for example. Another reason to split a package is when a part is not always needed. For example slime is not slime (client) and cl-swank (server) parts because it is possible to run the swank on another machine then the client. Both cases do not seem to apply in this case: the lisp package is architecture independent by nature and the documentation is useless without the package. Groetjes, Peter -- signature -at- pvaneynd.mailworks.org http://www.livejournal.com/users/pvaneynd/ "God, root, what is difference?" Pitr | "God is more forgiving." Dave Aronson| From hoan at ton-that.org Sat Oct 29 01:10:09 2005 From: hoan at ton-that.org (Hoan Ton-That) Date: Sat, 29 Oct 2005 11:10:09 +1000 Subject: [Bese-devel] Allegroserve backend fixes Message-ID: Hey there, Here's a quick patch for the allegroserve backend: The backend now uses the wserver slot. This makes it possible to shutdown the server. Also, unpublishing urls was implemented. Hoan -------------- next part -------------- A non-text attachment was scrubbed... Name: CHANGESET Type: application/octet-stream Size: 31719 bytes Desc: not available URL: From mb at bese.it Sat Oct 29 09:52:06 2005 From: mb at bese.it (Marco Baringer) Date: Sat, 29 Oct 2005 11:52:06 +0200 Subject: [Bese-devel] Allegroserve backend fixes In-Reply-To: (Hoan Ton-That's message of "Sat, 29 Oct 2005 11:10:09 +1000") References: Message-ID: Hoan Ton-That writes: > Hey there, hello! > Here's a quick patch for the allegroserve backend: applied. thanks. -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From jan at rychter.com Sat Oct 29 11:16:05 2005 From: jan at rychter.com (Jan Rychter) Date: Sat, 29 Oct 2005 13:16:05 +0200 Subject: [Bese-devel] unwinding In-Reply-To: (Jan Rychter's message of "Tue, 27 Sep 2005 14:53:05 +0200") References: <20050926191137.90262.qmail@web40612.mail.yahoo.com> Message-ID: A while ago I wrote: > > Hi, > > First, here is a solution I like better: > > > > (defaction logout ((c login-mixin)) > > (setf (get-session-value 'user) nil) ; remove login info > > (setf (ucw::frame.window-component (ucw::context.current-frame *context*)) > > (make-instance 'main))) ; simply throw away all the components > > > > It works as I wanted. I just need to try it 1000 times and see if it leaks > > memory... What do you think? (I do not count data that I may be stuffing > > somewhere, but just UCW.) > > On a related note, I believe this functionality should be part of > UCW. UCW should fully handle sessions and authorization, but not user > credentials handling -- so it should have an API for hooking in user > credential checking. Ok, I've gotten to the point where I actually need this. Is there a function that I can call that will discard the current session along with all data (allowing it to be gc'd) and take me back to an entry point? There seems to be delete-session, but it isn't exported from UCW and I need to pass it the current session. Does it do The Right Thing? --J. From mb at bese.it Sat Oct 29 11:23:47 2005 From: mb at bese.it (Marco Baringer) Date: Sat, 29 Oct 2005 13:23:47 +0200 Subject: [Bese-devel] unwinding In-Reply-To: (Jan Rychter's message of "Sat, 29 Oct 2005 13:16:05 +0200") References: <20050926191137.90262.qmail@web40612.mail.yahoo.com> Message-ID: Jan Rychter writes: > Ok, I've gotten to the point where I actually need this. Is there a > function that I can call that will discard the current session along > with all data (allowing it to be gc'd) and take me back to an entry > point? > > There seems to be delete-session, but it isn't exported from UCW and I > need to pass it the current session. Does it do The Right Thing? delete-session is what you're looking for (i'll export it asap). your other option is to use the new JUMP macro (and associated JUMP-TO-COMPONENT method). It will call a new component (just like CALL) but will drop everything in the session (including the session's object-table), it's just like delete-session except that the actual session object isn't deleted (so the session id remains the same). what i think you'd do (but i'm not really sure this is the clearest way to go about it) is something like this (asthe last thing in an action): (jump 'redirect-component :target "/entry-point-url") -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From luca at pca.it Sat Oct 29 11:23:49 2005 From: luca at pca.it (Luca Capello) Date: Sat, 29 Oct 2005 13:23:49 +0200 Subject: [cl-debian] Re: [Bese-devel] YACLML: debianization In-Reply-To: <200510282220.33939.cl-debian@pvaneynd.mailworks.org> (Peter Van Eynde's message of "Fri, 28 Oct 2005 22:20:32 +0200") References: <871x293hpj.fsf@gismo.pca.it> <87br199877.fsf@gismo.pca.it> <200510282220.33939.cl-debian@pvaneynd.mailworks.org> Message-ID: <87vezgh8hm.fsf@gismo.pca.it> Hello! On Fri 28 Oct 2005 22:20 +0200, Peter Van Eynde wrote: > On Friday 28 October 2005 13:45, Luca Capello wrote: >> > [splitting packages] >> > is this a normal way of doing things? if so this is what i'd do. >> >> While it's an usual thing to split a -doc package, I think that for >> the test suite there isn't a strict policy > > Well the policy gets involved because you should have a separate > package if the architecture independent part (/usr/share/foo) gets > 'too big'. > Another reason to split a package is when a part is not always > needed. For example slime is not slime (client) and cl-swank > (server) parts because it is possible to run the swank on another > machine then the client. > > Both cases do not seem to apply in this case: the lisp package is > architecture independent by nature and the documentation is useless > without the package. Analyzing Marco's code and checking back the discussion Marco and I had when I first packaged YACLML, I now remember the problem (because there's a problem, sorry)... To read the documentation, you need qbook. To compile qbook, however, you need YACLML. This is the main reason I put qbook as a suggestion, because it's not *strictly* necessary, but it could be useful. And this situation applies to any other Marco's package: 1) arnesi compiles alone (without any other Marco's software) depends on FiveAM for :arnesi.test depends on cl-ppcre for :arnesi.cl-ppcre-extras depends on qbook for the docs 2) FiveAM compiles with arnesi depends on qbook for the docs 3) qbook compiles with arnesi, iterate, cl-ppcre and yaclml 4) YACLML compiles with arnesi and iterate depends on FiveAM for :yaclml.test depends on qbook for the docs Please someone corrects me if I forgot something. And my idea for the debianization: 1) arnesi depends on clc (in Debian this implies cl-asdf) recommends FiveAM, cl-ppcre and qbook 2) FiveAM depends on clc and arnesi recommends qbook 3) qbook depends on clc, arnesi, iterate, cl-ppcre and yaclml 4) YACLML depends on clc, arnesi and iterate recommends FiveAM and qbook Moreover, I can add on the package description (or in the README.Debian) why the recommendations, to advice the user of the other functionalities. Or, another solution which is straightforward, we don't have any Recommends/Suggests, but only Depends (cl-ppcre takes 100K and iterate 265K). BTW, the packages are ready, this is the last problem ;-) Thx, bye, Gismo / Luca -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 188 bytes Desc: not available URL: From jan at rychter.com Sat Oct 29 11:41:40 2005 From: jan at rychter.com (Jan Rychter) Date: Sat, 29 Oct 2005 13:41:40 +0200 Subject: [Bese-devel] unwinding In-Reply-To: (Marco Baringer's message of "Sat, 29 Oct 2005 13:23:47 +0200") References: <20050926191137.90262.qmail@web40612.mail.yahoo.com> Message-ID: >>>>> "Marco" == Marco Baringer writes: Marco> Jan Rychter writes: >> Ok, I've gotten to the point where I actually need this. Is there a >> function that I can call that will discard the current session along >> with all data (allowing it to be gc'd) and take me back to an entry >> point? >> >> There seems to be delete-session, but it isn't exported from UCW and >> I need to pass it the current session. Does it do The Right Thing? Marco> delete-session is what you're looking for (i'll export it Marco> asap). your other option is to use the new JUMP macro (and Marco> associated JUMP-TO-COMPONENT method). It will call a new Marco> component (just like CALL) but will drop everything in the Marco> session (including the session's object-table), it's just like Marco> delete-session except that the actual session object isn't Marco> deleted (so the session id remains the same). Marco> what i think you'd do (but i'm not really sure this is the Marco> clearest way to go about it) is something like this (asthe last Marco> thing in an action): Marco> (jump 'redirect-component :target "/entry-point-url") What I have now is: (defaction confirm ((c logout)) (ucw::delete-session *movie-manager-application* (ucw::find-session *movie-manager-application* *context*)) (setf (ucw::frame.window-component (ucw::context.current-frame *context*)) (make-instance 'redirect-component :target "main"))) Is this roughly the right thing to do? I'd suggest that there be one single function that would delete the current session and go back to an entry point. --J. From svg at surnet.ru Sat Oct 29 18:56:38 2005 From: svg at surnet.ru (Vladimir Sekissov) Date: Sun, 30 Oct 2005 00:56:38 +0600 (YEKST) Subject: [Bese-devel] ucw feature request In-Reply-To: References: Message-ID: <20051030.005638.204590967.svg@surnet.ru> Good day, mb> this is something i think would be cool but don't have the time to do mb> myself: mb> mb> in ucw apps the concept of a 'page' loses some meaning, often i'll mb> have an entire application under a single query-path (/index.ucw). one mb> of the things this renders useless is awstats, anybody feel like mb> teaching ucw to record (using whatever means you prefer), in combined mb> log format, which component is being called? i would be usefull, at mb> least in same contexts, to be able to know what parts of the app are mb> being used the most. My attempt is in the attachment. I've looked at AWStats and it can be configured to such format easily. Best Regards, Vladimir Sekissov -------------- next part -------------- A non-text attachment was scrubbed... Name: CHANGESET.gz Type: application/octet-stream Size: 9620 bytes Desc: not available URL: From waldo at trianet.net Sun Oct 30 03:04:15 2005 From: waldo at trianet.net (Waldo Rubinstein) Date: Sat, 29 Oct 2005 23:04:15 -0400 Subject: [Bese-devel] UCW's requirements Message-ID: <9C7A6517-EADE-440B-A52F-6BE0C9A5F4EE@trianet.net> Can anyone tell me what are all the required packaged before successfully installing and running UCW, or better yet, ucw_dev? Thanks, Waldo From mb at bese.it Sun Oct 30 10:02:34 2005 From: mb at bese.it (Marco Baringer) Date: Sun, 30 Oct 2005 11:02:34 +0100 Subject: [Bese-devel] ucw feature request In-Reply-To: <20051030.005638.204590967.svg@surnet.ru> (Vladimir Sekissov's message of "Sun, 30 Oct 2005 00:56:38 +0600 (YEKST)") References: <20051030.005638.204590967.svg@surnet.ru> Message-ID: Vladimir Sekissov writes: > My attempt is in the attachment. I've looked at AWStats and it can be > configured to such format easily. sweet!! (applied) -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From mb at bese.it Sun Oct 30 10:10:01 2005 From: mb at bese.it (Marco Baringer) Date: Sun, 30 Oct 2005 11:10:01 +0100 Subject: [Bese-devel] UCW's requirements In-Reply-To: <9C7A6517-EADE-440B-A52F-6BE0C9A5F4EE@trianet.net> (Waldo Rubinstein's message of "Sat, 29 Oct 2005 23:04:15 -0400") References: <9C7A6517-EADE-440B-A52F-6BE0C9A5F4EE@trianet.net> Message-ID: Waldo Rubinstein writes: > Can anyone tell me what are all the required packaged before > successfully installing and running UCW, or better yet, ucw_dev? asdf (obviously) arnesi_dev - http://common-lisp.net/project/bese/repos/arnesi_dev yaclml - http://common-lisp.net/project/bese/repos/yaclml parenscript - http://common-lisp.net/project/ucw/repos/parenscript ucw_dev - http://common-lisp.net/project/ucw/repos/ucw_dev cl-ppcre - http://weitz.de/files/cl-ppcre.tar.gz iterate - http://common-lisp.net/project/iterate/ slime - http://common-lisp.net/project/slime (latest CVS only) these are required for the httpd backend: rfc2388 - http://common-lisp.net/project/rfc2388 (i work with the CVS version though the latest release will probably work as well) puri - http://files.b9.com/puri/puri-1.3.1.1.tar.gz if you want to use the araneida or aserve backends you will the server and all of their required libs. work is in progress to make all of this asdf-install'able (the only thing missing is a few cronjobs and some links from cliki). p.s. - if any of this isn't mentioned in the README please tell me. -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From luca at pca.it Sun Oct 30 10:10:09 2005 From: luca at pca.it (Luca Capello) Date: Sun, 30 Oct 2005 11:10:09 +0100 Subject: [Bese-devel] UCW's requirements In-Reply-To: <9C7A6517-EADE-440B-A52F-6BE0C9A5F4EE@trianet.net> (Waldo Rubinstein's message of "Sat, 29 Oct 2005 23:04:15 -0400") References: <9C7A6517-EADE-440B-A52F-6BE0C9A5F4EE@trianet.net> Message-ID: <87k6fvfh8e.fsf@gismo.pca.it> Hello! On Sun 30 Oct 2005 04:04 +0100, Waldo Rubinstein wrote: > Can anyone tell me what are all the required packaged before > successfully installing and running UCW, or better yet, ucw_dev? $ darcs get http://common-lisp.net/project/ucw/repos/ucw_dev $ cd ucw_dev $ less README Thx, bye, Gismo / Luca -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 188 bytes Desc: not available URL: From luca at pca.it Sun Oct 30 10:12:59 2005 From: luca at pca.it (Luca Capello) Date: Sun, 30 Oct 2005 11:12:59 +0100 Subject: [Bese-devel] Would it be very difficult to make both arnesi and yaclml asdf installable In-Reply-To: (Ignas Mikalajunas's message of "Tue, 4 Oct 2005 13:51:26 +0300") References: Message-ID: <87fyqjfh3o.fsf@gismo.pca.it> Hello! On Tue 04 Oct 2005 12:51 +0200, Ignas Mikalajunas wrote: > I know that making UCW itself asdf installable would not make much > sense - UCW can't operate witohout a backend, but having at least > yaclml installable separately would be kind of nice for those who are > using (or at least trying to use) it without UCW. Maybe you suffered of the YACLML bug I reported here [1], which is now corrected [2]. As of today, both YACLML and arnesi are installable without UCW (and, yes, both via ASDF). To be sure, I don't have UCW in my ASDF path. Thx, bye, Gismo / Luca [1] http://common-lisp.net/pipermail/bese-devel/2005-October/001142.html [2] http://common-lisp.net/pipermail/bese-devel/2005-October/001148.html -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 188 bytes Desc: not available URL: From mb at bese.it Sun Oct 30 10:14:35 2005 From: mb at bese.it (Marco Baringer) Date: Sun, 30 Oct 2005 11:14:35 +0100 Subject: [Bese-devel] UCW's requirements In-Reply-To: (Marco Baringer's message of "Sun, 30 Oct 2005 11:10:01 +0100") References: <9C7A6517-EADE-440B-A52F-6BE0C9A5F4EE@trianet.net> Message-ID: "Marco Baringer" writes: > Waldo Rubinstein writes: > >> Can anyone tell me what are all the required packaged before >> successfully installing and running UCW, or better yet, ucw_dev? obviously you'll also need a lisp implementation. ucw is known to have run on: clisp openmcl cmucl sbcl allegro lispworks though i only use openmcl, cmucl and clisp for production work (soon i'll add sbcl to that list) and i do all development on openmcll so if problems arise they're usually fixed on openmcl first and than later on the other lisps. multi-threading is a major plus for development work (though in production apps it doesn't make a huge difference). -- -Marco Ring the bells that still can ring. Forget the perfect offering. There is a crack in everything. That's how the light gets in. -Leonard Cohen From a_bakic at yahoo.com Sun Oct 30 10:59:33 2005 From: a_bakic at yahoo.com (Aleksandar Bakic) Date: Sun, 30 Oct 2005 02:59:33 -0800 (PST) Subject: [Bese-devel] ucw feature request In-Reply-To: <20051030.005638.204590967.svg@surnet.ru> Message-ID: <20051030105933.75047.qmail@web34612.mail.mud.yahoo.com> > My attempt is in the attachment. I've looked at AWStats and it can be > configured to such format easily. Heads up: when I do (using sbcl): (setf (log.level (get-logger 'ucw::ucw-logger)) +info+) one action paths gets logged and then my machine hangs up... Alex __________________________________ Yahoo! Mail - PC Magazine Editors' Choice 2005 http://mail.yahoo.com From a_bakic at yahoo.com Sun Oct 30 11:12:26 2005 From: a_bakic at yahoo.com (Aleksandar Bakic) Date: Sun, 30 Oct 2005 03:12:26 -0800 (PST) Subject: [Bese-devel] ucw feature request In-Reply-To: <20051030105933.75047.qmail@web34612.mail.mud.yahoo.com> Message-ID: <20051030111226.57886.qmail@web34613.mail.mud.yahoo.com> Infinite recursion is possible. The check below, for example, helps: (defmethod call-request-path ((subject standard-component)) (labels ((find-component-path (comp &optional acc) (push (class-name (class-of comp)) acc) (aif (or (and (slot-boundp comp 'parent) (slot-value comp 'parent)) (when (not (or (eq *current-component* :unbound) (eq *current-component* comp) (> (length acc) 20))) ; enough is enough *current-component*)) (find-component-path it acc) acc))) (call-next-method (find-component-path subject)))) Alex --- Aleksandar Bakic wrote: > > My attempt is in the attachment. I've looked at AWStats and it can be > > configured to such format easily. > > Heads up: when I do (using sbcl): > > (setf (log.level (get-logger 'ucw::ucw-logger)) +info+) > > one action paths gets logged and then my machine hangs up... > > Alex > > > > > __________________________________ > Yahoo! Mail - PC Magazine Editors' Choice 2005 > http://mail.yahoo.com > _______________________________________________ > bese-devel mailing list > bese-devel at common-lisp.net > http://common-lisp.net/cgi-bin/mailman/listinfo/bese-devel > __________________________________ Yahoo! FareChase: Search multiple travel sites in one click. http://farechase.yahoo.com From jan at rychter.com Sat Oct 29 10:02:06 2005 From: jan at rychter.com (Jan Rychter) Date: Sat, 29 Oct 2005 12:02:06 +0200 Subject: [Bese-devel] require a login In-Reply-To: (Marco Baringer's message of "Fri, 28 Oct 2005 19:31:06 +0200") References: Message-ID: Marco wrote: > "Marco Baringer" writes: > > Jan Rychter writes: > > > >> Ah, can now I see why. The problem was that I first needed a login form, > >> so I created an object subclassing form-element. But to call it from an > >> entry point, I needed it to be a window-component. I also wanted it to > >> be TAL-templateable. Subclassing both form-element and window-component > >> wouldn't work, so I made a window-component which contains the form. But > >> then the form object can't answer, because it is not the one being > >> called. > > > > for reasons (of which this is one) i'm going to remove the requirement > > that components called in an entry-point be window components. > > ok, i did it. window-components are gone (though > simple-window-component is usefull and remains). the patch has been > pushed but was tested VERY lightly and will require a complete > recompile. Right -- thanks -- but that doesn't quite solve my problem. I guess what bothers me is that I can't easily have a "standalone" form. Subclassing form-element gets me a form that can be embedded, but that doesn't generate the full HTML to be standalone. Ideally, I'd like to be able to do (defcomponent my-form (form-element toplevel-component) [...]) or (defcomponent my-form (form-element toplevel-component template-component) [...]) and have it do The Right Thing, e.g. generate a callable component with a form, where I can answer from the submit action. It's not that it's impossible to do the above, it's just that it seems overly complicated to wrap things in several layers just to produce a callable standalone form. Does that make sense? --J. From jan at rychter.com Mon Oct 31 15:25:17 2005 From: jan at rychter.com (Jan Rychter) Date: Mon, 31 Oct 2005 16:25:17 +0100 Subject: [Bese-devel] Probable UCW bug Message-ID: I believe I've hit a bug in UCW, although I can't really track it down precisely. The problem occurs when I use text-area-element with an indirect value. It turns empty strings into NILs. I can make the problem disappear by changing the form element to text-element -- if I do that, my objects end up with "" instead of NIL, as expected. Does this ring any bells with anyone? --J. From Artur.Maciag at artgabi.com.pl Mon Oct 31 16:49:18 2005 From: Artur.Maciag at artgabi.com.pl (Artur =?iso-8859-2?Q?Maci=B1g?=) Date: Mon, 31 Oct 2005 17:49:18 +0100 Subject: [Bese-devel] Newbie problem - installed but not working ? Message-ID: <87ek61bpip.fsf@artgabi.com.pl> Hi, I have problem running UCW. Host: Ubuntu 5.10 (kernel 2.6.12) sbcl 0.9.6 ucw_dev and arnesi_dev (from darcs repos) With mod_lisp backend (apache 1.3) sbcl reports (after sbcl --load lisp/ucw/bin/start.lisp): ,---- | 2005-10-31T16:45.31 +WARN+ IT.BESE.UCW::UCW.BACKEND: Attempting to publish #P"/home/artur/lisp/ucw/wwwroot/./" at "/" but mod_lisp backend does not support publish-directory. | 2005-10-31T16:45.31 +WARN+ IT.BESE.UCW::UCW.BACKEND: Attempting to publish #P"/home/artur/lisp/ucw/wwwroot/./admin/" at "/admin/" but mod_lisp backend does not support publish-directory. | 2005-10-31T16:45.31 +INFO+ IT.BESE.UCW::UCW-LOGGER: Starting up standard server #. `---- -- it looks OK to me. But when I point browser to: http://127.0.0.1:8080/ucw/exmples/index.ucw nothing happens ("Waiting for 127.0.0.1...." - forever :D ) The same with '/admin' and '/hello/index.ucw' (BTW: Marco, thanks for video tutorials :D) when I press stop button sbcl reports: ,---- | 2005-10-31T16:47.12 IT.BESE.ARNESI:+ERROR+ IT.BESE.UCW::UCW.BACKEND: Worker thread # reported #. `---- ---------------------------------------------------------------------- with httpd backend: 2005-10-31T16:53.25 +INFO+ IT.BESE.UCW::UCW-LOGGER: Starting up standard server #. Browser reports: /ucw/exmples/index.ucw not found and sbcl: ,---- | 2005-10-31T16:54.55 IT.BESE.ARNESI:+INFO+ IT.BESE.UCW::UCW.BACKEND: Handling request for "/" | 2005-10-31T16:55.00 IT.BESE.ARNESI:+INFO+ IT.BESE.UCW::UCW-LOGGER: COMPONENT-PATH /EXAMPLE-WINDOW | 2005-10-31T16:55.01 IT.BESE.ARNESI:+ERROR+ IT.BESE.UCW::UCW-LOGGER: Error # while serving action. | 2005-10-31T16:55.02 IT.BESE.ARNESI:+ERROR+ IT.BESE.UCW::UCW-LOGGER: Aborting action. | 2005-10-31T16:55.03 IT.BESE.ARNESI:+ERROR+ IT.BESE.UCW::UCW-LOGGER: Error # while serving action. | 2005-10-31T16:55.03 IT.BESE.ARNESI:+ERROR+ IT.BESE.UCW::UCW-LOGGER: Aborting action. | 2005-10-31T16:55.04 IT.BESE.ARNESI:+ERROR+ IT.BESE.UCW::UCW-LOGGER: Error # while serving action. `---- ... and so on and in ucw-backend.log: ,---- | (+INFO+ 3339762911 IT.BESE.UCW::UCW.BACKEND "Handling request for \"/ucw/exmples/index.ucw\"") | (+INFO+ 3339762911 IT.BESE.UCW::UCW.BACKEND "Shutdown down # (Status: \"404 Not Found\").") | (+INFO+ 3339762917 IT.BESE.UCW::UCW.BACKEND "Handling request for \"/exmples/index.ucw\"") | (+INFO+ 3339762917 IT.BESE.UCW::UCW.BACKEND "Shutdown down # (Status: \"404 Not Found\").") | (+INFO+ 3339762923 IT.BESE.UCW::UCW.BACKEND "Handling request for \"/ucw/exmples/index.ucw\"") | (+INFO+ 3339762923 IT.BESE.UCW::UCW.BACKEND "Shutdown down # (Status: \"404 Not Found\").") `---- Looks like UCW can't find 'pages'. Can somebody help ? I'm also lisp newbie - so don't know how to trace this bug. I can connect from slime but what then ? ucw:*default-application* is NIL ucw:*default-server* gives: # After: (setf ucw:*debug-on-error* t) and reloading I see no change in logs. What to do ? Where to look ? Help ! :D Artur. -- Artur Maci?g http://www.artgabi.com.pl ---------------------------------------------------------------------- Sometimes a cigar is just a cigar. -- Sigmund Freud From svg at surnet.ru Mon Oct 31 18:08:29 2005 From: svg at surnet.ru (Vladimir Sekissov) Date: Mon, 31 Oct 2005 23:08:29 +0500 (YEKT) Subject: [Bese-devel] Probable UCW bug In-Reply-To: References: Message-ID: <20051031.230829.257736332.svg@surnet.ru> Good day, jan> I believe I've hit a bug in UCW, although I can't really track it down jan> precisely. The problem occurs when I use text-area-element with an jan> indirect value. It turns empty strings into NILs. I can make the problem jan> disappear by changing the form element to text-element -- if I do that, jan> my objects end up with "" instead of NIL, as expected. I couldn't represent such behaviour and got NIL in both cases. If you want element to return "" instead of NIL set DEFAULT-VALUE slot to "". Default behaviour is treating empty input as NIL. You can also change INPUT-FILTER slot or COERCE-CLIENT-VALUE method to satisfy your needs. Best Regards, Vladimir Sekissov