From read at robertlread.net Fri Jan 6 15:52:29 2006 From: read at robertlread.net (Robert L. Read) Date: Fri, 06 Jan 2006 09:52:29 -0600 Subject: [elephant-announce] Elephant 0.4.0 is released Message-ID: <1136562750.6608.37.camel@localhost.localdomain> Elephant 0.4.0 is released. It can be obtained from the elephant project main page: http://common-lisp.net/project/elephant/ This release only fixes bugs over the 0.3.0 release; however the numbers seem low for what I deem to be a relatively stable system so I called it 0.4.0. The improvements over 0.3.0 are: 1) 0.4.0 now works with unicode-enables SBCL versions 2) 0.4.0 works with ACL 3) a bug in documentation has been fixed. Thanks to Waldo Rubinstein, Andrew Philpot, Andrew Blumberg and me. If anybody installs 0.4.0 and gets it to work, I would love a confirmation email telling me which LISP implementation you use so that I can build a matrix of what works. I myself only test under SBCL, but I believe this release will work with ACL and Open MCL. ---- Robert L. Read, PhD read &T robertlread.net Consider visiting Progressive Engineering: http://robertlread.net/pe In Austin: 912-8593 "Think globally, Act locally." -- RBF -------------- next part -------------- An HTML attachment was scrubbed... URL: From read at robertlread.net Fri Jan 6 19:13:42 2006 From: read at robertlread.net (Robert L. Read) Date: Fri, 06 Jan 2006 13:13:42 -0600 Subject: [elephant-announce] Re: more allegro changes you might want to incorporate In-Reply-To: <200601061808.k06I8xBj004250@ubirr.isi.edu> References: <200601061808.k06I8xBj004250@ubirr.isi.edu> Message-ID: <1136574823.6608.62.camel@localhost.localdomain> Andrew has discovered some problems (and even more than this message.) I thought 4.0 was functional under ACL, but I would now have to say it is questionable. Unfortunately, I am about to begin an weekend-long LAN party to rebuild the website of the Esperanto League of North America, so will not be able to incorprate Andrew's suggestions until next week. Many thanks, Andrew for all your work. If everyone can continue to be patient with me, we will continue to have a better-and-better project. On Fri, 2006-01-06 at 10:08 -0800, Andrew Philpot wrote: > In src/elephant.lisp, you need three more imports from CLOS (primary > name is ACLMOP) > > #+allegro > (:import-from :clos > compute-class-precedence-list > validate-superclass > standard-slot-definition > standard-direct-slot-definition > standard-effective-slot-definition > direct-slot-definition-class > effective-slot-definition-class > slot-definition-name > slot-definition-initform > slot-definition-initfunction > compute-effective-slot-definition > class-slots > slot-value-using-class > slot-boundp-using-class > slot-makunbound-using-class > slot-definition-allocation > slot-definition-initargs > class-finalized-p > finalize-inheritance > compute-slots > slot-definition-readers > slot-definition-writers > class-direct-slots) > > In INSTALL and src/controller, there are stray references to '0.3.0' > Maybe you could use logical pathnames? > > I didn't notice this before, but DESERIALIZE-FROM-BASE64-STRING has > arguments (x &keys sc) and is called incorrectly in SQL-DUMP-CLCN > which should probably be something like > > (defmethod sql-dump-clcn ((clcn integer) sc con) > (let* ( > (tuples > (clsql::select [key] [value] > :from [keyvalue] > :where [and [= [clctn_id] clcn]] > :database con > ))) > (mapcar #'(lambda (x) > (mapcar #'(lambda (q) > (deserialize-from-base64-string q :sc sc)) x)) > tuples))) -------------- next part -------------- An HTML attachment was scrubbed... URL: From read at robertlread.net Tue Jan 10 21:23:04 2006 From: read at robertlread.net (Robert L. Read) Date: Tue, 10 Jan 2006 15:23:04 -0600 Subject: [elephant-announce] Status of 4.0 ---- apparently OK, but some minor problems.... In-Reply-To: <1136574823.6608.62.camel@localhost.localdomain> References: <200601061808.k06I8xBj004250@ubirr.isi.edu> <1136574823.6608.62.camel@localhost.localdomain> Message-ID: <1136928184.7578.73.camel@localhost.localdomain> Dear Team, I was out of touch this weekend on another project. Before the weekend I sent a note questioning whether 4.0 really worked with ACL. Andrew Philpot has been doing a great job sending me suggestions, which I have not been able to keep up with. Based on what he is sent me, I think it is clear: 1) 4.0 does work with ACL-6.2 2) 4.0 does probably has a type-specific bug with ACL-7.0 (see below) 3) Andrew has pointed out a lot of mis-organization of the code in terms of circular references and so forth that produce compiler warnings but are not fatal. I have not had time to digest his suggestions; I also am not really an expert in this sort of thing although I am learning. I will continue to work with him and will study his suggestions later in the week. Basically, it seems like to clarify and improve the code quality, I need to do some significant reorganization. As far as I know, it remeains true that 0.4.0 is the best release so far. Andrew Philpot wrote: The type declarations in controller.lisp in the following (defun add-index-from-index (iname v dstibt dstsc) (declare (type btree-index v) (type indexed-btree dstibt)) (let ((kf (key-form v))) (format t " kf ~A ~%" kf) (let ((index (build-btree-index dstsc :primary dstibt :key-form kf))) ;; Why do I have to do this here? (setf (indices dstibt) (make-hash-table)) (setf (indices-cache dstibt) (make-hash-table)) (setf (gethash iname (indices-cache dstibt)) index) (setf (gethash iname (indices dstibt)) index) ) ) ) apparently are seen before the type is visible in ACL: ; While compiling ADD-INDEX-FROM-INDEX: Warning: Ignoring declaration of unrecognized type: BTREE-INDEX Warning: Ignoring declaration of unrecognized type: INDEXED-BTREE I still have migration/*test-path-secondary* turned off In acl6.2 5 out of 106 total tests failed: ELEPHANT-TESTS::MIGRATE1, ELEPHANT-TESTS::MIGRATE2, ELEPHANT-TESTS::MIGRATE3, ELEPHANT-TESTS::MIGRATE4, ELEPHANT-TESTS::MIGRATE5. In acl7.0 6 out of 106 total tests failed: ELEPHANT-TESTS::ARRAYS-1, ELEPHANT- TESTS::MIGRATE1, ELEPHANT-TESTS::MIGRATE2, ELEPHANT-TESTS::MIGRATE3, ELEPHANT- TESTS::MIGRATE4, ELEPHANT-TESTS::MIGRATE5. The difference is in serializing that funny array with element-type (UNSIGNED-BYTE 20) ELE-TESTS(30): (in-out-value (make-array '(3 4 5) :element-type '(unsigned-byte 20))) 0[1]: (SERIALIZE # #S(SLEEPYCAT:BUFFER-STREAM :BUFFER 2684465168 :SIZE 0 :POSITION 0 :LENGTH 5184)) Error: # fell through a ETYPECASE form. The valid cases were FIXNUM, NULL, SYMBOL, STRING, PERSISTENT, SINGLE- FLOAT, DOUBLE-FLOAT, CHARACTER, PATHNAME, INTEGER, RATIONAL, CONS, HASH-TABLE, STANDARD- OBJECT, and ARRAY. [condition type: CASE-FAILURE] Restart actions (select using :continue): 0: Return to Top Level (an "abort" restart). 1: Abort entirely from this (lisp) process. [1] ELE-TESTS(31): :reset 0[1]: returned-by-throwing NIL ELE-TESTS(32): #Andrew -------------- next part -------------- An HTML attachment was scrubbed... URL: