<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
  <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
  <META NAME="GENERATOR" CONTENT="GtkHTML/3.3.2">
</HEAD>
<BODY>
Can you outline the responsibilities?<BR>
<BR>
In addition to time, there are three reasons why I would not make a good owner:<BR>
<BR>
1)  I use only SBCL and plan to use only SBCL for the foreseeable future.<BR>
2)  I am not a super-great LISP coder.<BR>
3)  I am modifying Elephant to use CL-SQL as a backend.  I plan to "release and <BR>
own" this, in any case.  However, fans of Sleepcat may not want to have the nice<BR>
simple code of Elephant cluttered up with my SQL-related code.<BR>
<BR>
Since I plan to own the CL-SQL based Elephant anyway, the real issue is<BR>
should that stuff be a fork from Elephant or part of Elephant?<BR>
<BR>
And, since I'm only half-way done, people might be really unhappy when the <BR>
code review it.<BR>
<BR>
<BR>
<BR>
<BR>
<BR>
On Tue, 2005-09-20 at 23:41 -0500, Ben Lee wrote:
<BLOCKQUOTE TYPE=CITE>
<PRE>
<FONT COLOR="#000000">it looks like you're right.  but instead of sending me a patch...</FONT>

<FONT COLOR="#000000">who wants the keys to the car?  (actually i'm not exactly sure how to </FONT>
<FONT COLOR="#000000">hand them over.)</FONT>

<FONT COLOR="#000000">B</FONT>

<FONT COLOR="#000000">Robert L. Read wrote:</FONT>
<FONT COLOR="#000000">> While working on implementing Elephant on top of CL-SQL, which </FONT>
<FONT COLOR="#000000">> led me to do base64 encoding of the serialized lisp objects, I discovered</FONT>
<FONT COLOR="#000000">> what I suspect to be a (normally) unexercised bug in buffer-read-byte,</FONT>
<FONT COLOR="#000000">> namely that it currently uses ":char" instead of :unsigned-byte.</FONT>
<FONT COLOR="#000000">> </FONT>
<FONT COLOR="#000000">> This bug goes unnoticed because the serializer only puts values less than </FONT>
<FONT COLOR="#000000">> 128 into the position that it reads with this routine.  I discovered it</FONT>
<FONT COLOR="#000000">> because I am using this routine to read out the whole buffer-stream into</FONT>
<FONT COLOR="#000000">> a byte-vector for the purpose of base64 encoding so that I can put it into</FONT>
<FONT COLOR="#000000">> a text field in PostGres safely.</FONT>
<FONT COLOR="#000000">> </FONT>
<FONT COLOR="#000000">> If you make this change, all of the tests still run exactly as they did.</FONT>
<FONT COLOR="#000000">> </FONT>
<FONT COLOR="#000000">> </FONT>
<FONT COLOR="#000000">> </FONT>
<FONT COLOR="#000000">> </FONT>
<FONT COLOR="#000000">> (defun buffer-read-byte (bs)</FONT>
<FONT COLOR="#000000">>   "Read a byte."</FONT>
<FONT COLOR="#000000">>   (declare (optimize (speed 3) (safety 0))</FONT>
<FONT COLOR="#000000">>         (type buffer-stream bs))</FONT>
<FONT COLOR="#000000">>   (let ((position (buffer-stream-position bs)))</FONT>
<FONT COLOR="#000000">>     (incf (buffer-stream-position bs))</FONT>
<FONT COLOR="#000000">>    (deref-array (buffer-stream-buffer bs) '(:array _*:unsigned-byte*_) position)))</FONT>
<FONT COLOR="#000000">> </FONT>
<FONT COLOR="#000000">> @@ -733,7 +736,33 @@</FONT>
<FONT COLOR="#000000">>            (type buffer-stream bs))</FONT>
<FONT COLOR="#000000">>    (let ((position (buffer-stream-position bs)))</FONT>
<FONT COLOR="#000000">>      (incf (buffer-stream-position bs))</FONT>
<FONT COLOR="#000000">> -    (deref-array (buffer-stream-buffer bs) '(:array :char) position)))</FONT>
<FONT COLOR="#000000">> +   (deref-array (buffer-stream-buffer bs) '(:array :unsigned-byte) position)))</FONT>
<FONT COLOR="#000000">> </FONT>
<FONT COLOR="#000000">> </FONT>
<FONT COLOR="#000000">> </FONT>
<FONT COLOR="#000000">> ------------------------------------------------------------------------</FONT>
<FONT COLOR="#000000">> </FONT>
<FONT COLOR="#000000">> _______________________________________________</FONT>
<FONT COLOR="#000000">> elephant-devel site list</FONT>
<FONT COLOR="#000000">> <A HREF="mailto:elephant-devel@common-lisp.net">elephant-devel@common-lisp.net</A></FONT>
<FONT COLOR="#000000">> <A HREF="http://common-lisp.net/mailman/listinfo/elephant-devel">http://common-lisp.net/mailman/listinfo/elephant-devel</A></FONT>
<FONT COLOR="#000000">_______________________________________________</FONT>
<FONT COLOR="#000000">elephant-devel site list</FONT>
<FONT COLOR="#000000"><A HREF="mailto:elephant-devel@common-lisp.net">elephant-devel@common-lisp.net</A></FONT>
<FONT COLOR="#000000"><A HREF="http://common-lisp.net/mailman/listinfo/elephant-devel">http://common-lisp.net/mailman/listinfo/elephant-devel</A></FONT>
</PRE>
</BLOCKQUOTE>
<TABLE CELLSPACING="0" CELLPADDING="0" WIDTH="100%">
<TR>
<TD>
----<BR>
Robert L. Read, PhD                                     read &T robertlread.net<BR>
Consider visiting Progressive Engineering:      http://robertlread.net/pe<BR>
In Austin: 912-8593                                        "Think globally, Act locally." -- RBF<BR>
<BR>
<BR>
</TD>
</TR>
</TABLE>
</BODY>
</HTML>