<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:syn="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/">
  <channel rdf:about="http://blog.gmane.org/gmane.lisp.alexandria.devel">
    <title>gmane.lisp.alexandria.devel</title>
    <link>http://blog.gmane.org/gmane.lisp.alexandria.devel</link>
    <description/>
    <syn:updatePeriod>hourly</syn:updatePeriod>
    <syn:updateFrequency>1</syn:updateFrequency>
    <syn:updateBase>1901-01-01T00:00+00:00</syn:updateBase>
    <items>
      <rdf:Seq>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.lisp.alexandria.devel/471"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.lisp.alexandria.devel/467"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.lisp.alexandria.devel/466"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.lisp.alexandria.devel/459"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.lisp.alexandria.devel/450"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.lisp.alexandria.devel/446"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.lisp.alexandria.devel/430"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.lisp.alexandria.devel/429"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.lisp.alexandria.devel/421"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.lisp.alexandria.devel/407"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.lisp.alexandria.devel/402"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.lisp.alexandria.devel/401"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.lisp.alexandria.devel/400"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.lisp.alexandria.devel/399"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.lisp.alexandria.devel/397"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.lisp.alexandria.devel/395"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.lisp.alexandria.devel/391"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.lisp.alexandria.devel/390"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.lisp.alexandria.devel/388"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.lisp.alexandria.devel/383"/>
      </rdf:Seq>
    </items>
    <image rdf:resource="http://gmane.org/img/gmane-25t.png"/>
    <textinput rdf:resource=""/>
  </channel>
  <image rdf:about="http://gmane.org/img/gmane-25t.png">
    <title>Gmane</title>
    <url>http://gmane.org/img/gmane-25t.png</url>
    <link>http://gmane.org</link>
  </image>
  <item rdf:about="http://comments.gmane.org/gmane.lisp.alexandria.devel/471">
    <title>Nesting</title>
    <link>http://comments.gmane.org/gmane.lisp.alexandria.devel/471</link>
    <description>&lt;pre&gt;I've found the following definitions incredibly useful in
(nest) allowing indentation to not get out of hand
(nest) getting the good feeling of that binding has other languages
(tsen) focusing on the thing at hand, not the intermediate definitions needed
(tsen) "piping" results into a series of functions or forms.

I don't like the name "tsen", though. "wrap" comes to mind.
Maybe you have better suggestions.

;;; Nesting binding forms (from a suggestion by marco baringer)
(defmacro with-nesting ((&amp;amp;key (from-end t)) &amp;amp;rest things)
  (if from-end `(nest ,&amp;lt; at &amp;gt;things) `(tsen ,&amp;lt; at &amp;gt;things)))

(defmacro nest (&amp;amp;rest things)
  (reduce #'(lambda (outer inner) (append outer (list inner)))
          things :from-end t))

(defmacro tsen (&amp;amp;rest things)
  (reduce #'(lambda (inner outer) (append outer (list inner)))
          things :from-end nil))

In any case, I'd like these to become a standard part of alexandria.

—♯ƒ • François-René ÐVB Rideau •Reflection&amp;amp;Cybernethics• http://fare.tunes.org
Gauss, when asked how&lt;/pre&gt;</description>
    <dc:creator>Faré</dc:creator>
    <dc:date>2012-05-26T20:43:18</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.lisp.alexandria.devel/467">
    <title>[Patch]: Fix an example in the docstring of iota.</title>
    <link>http://comments.gmane.org/gmane.lisp.alexandria.devel/467</link>
    <description>&lt;pre&gt;An example in the docstring of iota was
(iota 4) =&amp;gt; (0 1 2 3 4)
while it should've been
(iota 4) =&amp;gt; (0 1 2 3).


&lt;/pre&gt;</description>
    <dc:creator>Stas Boukarev</dc:creator>
    <dc:date>2012-05-15T20:57:22</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.lisp.alexandria.devel/466">
    <title>Split up Alexandria into an additionalexperimental package?</title>
    <link>http://comments.gmane.org/gmane.lisp.alexandria.devel/466</link>
    <description>&lt;pre&gt;
What is a good way to handle new additions to Alexandria that
are not fully fledged out yet?

As Hans noticed himself over this week, it usually takes
an incredible amount of time and effort to come up with
something with complete semantics. Time is a scarce resource,
and even if it was not, only experience and actual usage will
discover edges cases.

Common Lisp itself has been tried out and implemented many
times during the standardization process itself which is one
of the reasons it's engineered as well as it is.


What about providing an :ALEXANDRIA.EXPERIMENTAL
package that uses :ALEXANDRIA? New additions
go into the experimental package which is advertised
not necessarily to be fully backwards compatible.

People can explicitly :IMPORT-FROM that package (which
will continue to work even when the symbol moves from there
into :ALEXANDRIA, assuming no incompatible changes have been
made.)

T
&lt;/pre&gt;</description>
    <dc:creator>Tobias C Rittweiler</dc:creator>
    <dc:date>2012-04-26T09:43:44</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.lisp.alexandria.devel/459">
    <title>DESTRUCTURE-CLAUSES -alexandria_destruct#9CF676.diff (1/1)</title>
    <link>http://comments.gmane.org/gmane.lisp.alexandria.devel/459</link>
    <description>&lt;pre&gt;I was pleased to discover that DESTRUCTURING-CASE made it into
Alexandria meanwhile. Very nice! This allows me to share the
little gem that I'm attaching with this posting. It's a handy
macro to make writing macros like DEFPACKAGE, DEFGENERIC of
DEFREADTABLE easy like a breeze.

Happy to be giving back again! :-)

T
diff --git a/macros.lisp b/macros.lisp
index 4450435..0d4b9e9 100644
--- a/macros.lisp
+++ b/macros.lisp
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -303,4 +303,76 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; Example:
   (setf (documentation name 'function) (documentation 'destructuring-case 'function)))
 
 
+;;; DESTRUCTURE-CLAUSES
 
+(defmacro destructure-clauses (clauses patterns &amp;amp;body body)
+  "Utility macro to conveniently destructure DEFPACKAGE like clauses.
+
+     clauses  ::= clause*
+     clause   ::= (keyword . list)                  ; e.g. (:FOO 1 :K 2)
+
+     patterns ::= pattern*
+     pattern  ::= (keyword . ordinary-lambda-list)  ; e.g. (:FOO N &amp;amp;KEY K)
+
+The CAR of each clause in CLAUSES will be tried to be matched against
+the CAR of each pattern in PATTERNS.&lt;/pre&gt;</description>
    <dc:creator>Tobias C Rittweiler</dc:creator>
    <dc:date>2012-04-25T13:47:04</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.lisp.alexandria.devel/450">
    <title>EXTREMUM</title>
    <link>http://comments.gmane.org/gmane.lisp.alexandria.devel/450</link>
    <description>&lt;pre&gt;
The cl-utilities library contains one function which cannot be
found in alexandria that necessity pops up every now and then:

  Returning the maximum (or minimum) element in a sequence
  with respect to an arbitrary calculation involving the elements.

I.e.

  (elt (sort (copy-sequence &amp;lt;SEQUENCE&amp;gt;) #'&amp;lt; :key &amp;lt;FUNCTION&amp;gt;) 0) ; or #'&amp;gt;

except doing it more efficiently.

CL-UTILITIES calls this function EXTREMUM. (It also provides a couple
of more functions along the lines to cover some edge cases.)

The code can be found here:
 
http://common-lisp.net/viewvc/cl-utilities/cl-utilities/extremum.lisp?rev
ision=1.10&amp;amp;view=markup

As the code is Public Domain, it could just be moved as is.


I find no other use of cl-utilities and would like to see it
become entirely obsolete.

T
&lt;/pre&gt;</description>
    <dc:creator>Tobias C Rittweiler</dc:creator>
    <dc:date>2012-04-25T09:15:59</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.lisp.alexandria.devel/446">
    <title>Some number patches</title>
    <link>http://comments.gmane.org/gmane.lisp.alexandria.devel/446</link>
    <description>&lt;pre&gt;Hello all:

I've decided I'm going to try to merge in stuff from my QTILITY
library [1] in an attempt to reduce the number of utility libraries
out there -- provided the stuff fits with the goals of Alexandria.
Xach and I decided it's best not to add more utility libraries to
Quicklisp.

I've created a patch that adds MULF and DIVF, which do what you might
expect (modify macros for * and /). I also added some numerical
predicates that I myself like, as well as others: POSITIVEP,
NEGATIVEP, NON-POSITIVE-P, NON-NEGATIVE-P, NON-ZERO-P. As you might
notice, they sound especially familiar to those who read mathematics
literature.

Also, would it be possible for me to have push permissions?

I hope you'll take these attached patches into consideration.

Thanks,

Robert Smith


[1] https://bitbucket.org/tarballs_are_good/qtility/src
_______________________________________________
alexandria-devel mailing list
alexandria-devel&amp;lt; at &amp;gt;common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/alexandria-devel
&lt;/pre&gt;</description>
    <dc:creator>Robert Smith</dc:creator>
    <dc:date>2012-04-25T03:03:10</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.lisp.alexandria.devel/430">
    <title>Proposed addition of temporary file creationutilities</title>
    <link>http://comments.gmane.org/gmane.lisp.alexandria.devel/430</link>
    <description>&lt;pre&gt;Hi,

following up on an IRC discussion yesterday, I am proposing the
addition of the OPEN-TEMPORARY function and WITH-OPEN-TEMPORARY-FILE
macro below (and on http://paste.lisp.org/display/129090#14).  It
implements functionality that is commonly required, but that is not
available in any other library in a portable fashion.  osicat has been
suggested, but it does not implement temporary file handling on
Windows.

This posting is to determine whether there is opposition regarding
inclusion in Alexandria.  I'll re-post as a proper patch including
symbol exports when there is agreement to include it.

-Hans

(in-package :alexandria)

(defparameter *default-temporary-directory* #P"/tmp/")

(eval-when (:load-toplevel :execute)
  (when (and (null (logical-pathname-translations "TEMPORARY-FILES"))
             (probe-file *default-temporary-directory*))
    (setf (logical-pathname-translations "temporary-files") `(("*.*.*"
,*default-temporary-directory*)))))

(defparameter *max-tries* 10000)

(defun generate-random&lt;/pre&gt;</description>
    <dc:creator>Hans Hübner</dc:creator>
    <dc:date>2012-04-22T13:35:45</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.lisp.alexandria.devel/429">
    <title>test failures on ACL and CMUCL</title>
    <link>http://comments.gmane.org/gmane.lisp.alexandria.devel/429</link>
    <description>&lt;pre&gt;Hello. 

I wander if it's a known issue that alexandria tests fail on ACL and CMUCL?
(there also failures on CLISP, but they are marked as "known failres" in the test suite)

For you convenience here is the list of failed tests and what compilers
are affected by each failure (from the test results we collected on the recent Quicklisp):

"alist-hash-table.1" =&amp;gt; ("clisp-2.49+-unix")
"copy-hash-table.1" =&amp;gt; ("acl-8.2a-linux-x64" "clisp-2.49+-unix")
"copy-sequence.1" =&amp;gt; ("cmu-20c_release-20c__20c_unicode_-linux-x86")
"plist-hash-table.1" =&amp;gt; ("clisp-2.49+-unix")
"type=.3" =&amp;gt; ("acl-8.2a-linux-x64")
"type=.4" =&amp;gt; ("acl-8.2a-linux-x64")

More information (with the test run logs where more details may be found):
http://common-lisp.net/project/cl-test-grid/pivot_lib_ql-lisp.html

Best regards,
- Anton
&lt;/pre&gt;</description>
    <dc:creator>Anton Vodonosov</dc:creator>
    <dc:date>2012-04-17T23:12:58</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.lisp.alexandria.devel/421">
    <title>Reminder alexandria:curry is not currying</title>
    <link>http://comments.gmane.org/gmane.lisp.alexandria.devel/421</link>
    <description>&lt;pre&gt;Hi,

Is there any progress on this discussion?

http://www.mail-archive.com/alexandria-devel&amp;lt; at &amp;gt;common-lisp.net/msg00199.html

I really won't use `curry' as partial application. I hope `partial-apply' will be soon available.

&lt;/pre&gt;</description>
    <dc:creator>Tomohiro Matsuyama</dc:creator>
    <dc:date>2012-04-11T02:10:43</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.lisp.alexandria.devel/407">
    <title>[PATCH] PROG1-LET</title>
    <link>http://comments.gmane.org/gmane.lisp.alexandria.devel/407</link>
    <description>&lt;pre&gt;PROG1-LET is a binding macro modeled closely after WHEN-LET and
friends, which I have regularly found useful in code to implement the
"create, modify, return" pattern common in some imperative
code. As a simple and, I believe, widely useful macro, I'd like to see
this enter into Alexandria proper. Docstring follows:

Creates new variable bindings and executes FORMS, returning the
initial value of the first binding.

BINDINGS must be either single binding of the form:

 (variable initial-form)

or a list of bindings of the form:

 ((variable   initial-form)
  (variable-2 initial-form-2)
  ...
  (variable-n initial-form-n))

All initial-forms are executed sequentially in the specified order,
then all the variables are bound to the corresponding values and FORMS
are executed as an implicit PROGN. Finally, the value returned by
INITIAL-FORM is returned.
From cbccc782f34477c924ea8ff7b6000cd52511a768 Mon Sep 17 00:00:00 2001
From: Benjamin Saunders &amp;lt;ralith&amp;lt; at &amp;gt;gmail.com&amp;gt;
Date: Sat, 7 Apr 2012 13:19:19 -0700
Subject: [&lt;/pre&gt;</description>
    <dc:creator>Benjamin Saunders</dc:creator>
    <dc:date>2012-04-07T20:25:00</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.lisp.alexandria.devel/402">
    <title>destructuring-case</title>
    <link>http://comments.gmane.org/gmane.lisp.alexandria.devel/402</link>
    <description>&lt;pre&gt;Hello all,

The `destructuring-case` macro imo is a little different than I would
think it would be upon just hearing the name.

The thing is, i'd have made the clauses to basically the
`destructuring-bind` form, except that a clause is executed if the
'nested lists-shape' matches, and all non-symbols, keywords match. I'd
add `quote` as special, something that also must match exactly, and
maybe `lambda`/`function` to indicate a function that must return
true.(which now i think of it is an idea for the next section.)

(shameless plug)Maybe the reason is that i wrote a `destructuring-regex`
https://github.com/o-jasper/j-basic/blob/master/src/destructuring-regex.lisp
of which the idea is that the variables can simply be written on the
matches/space between the matches.(Further each lisp object can add a
method giving the regular expression for it, and also provide a parser)
It uses the regex package though, is cl-ppcre more commonly used as
dependency?

But basically, i have a `regex-case` for it. Them being re&lt;/pre&gt;</description>
    <dc:creator>Jasper</dc:creator>
    <dc:date>2012-03-20T20:34:55</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.lisp.alexandria.devel/401">
    <title>broken LOOP forms</title>
    <link>http://comments.gmane.org/gmane.lisp.alexandria.devel/401</link>
    <description>&lt;pre&gt;Alexandria (QL version) doesn't compile on ECL and warns on CLISP because invalid LOOP forms are used in (at least) COPY-STREAM. EG:

(loop
   :while (&amp;lt; input-position start)
   :for bytes-read = (read-sequence buffer input
                                    :end (min (length buffer)
                                              (- start input-position)))
   :do (progn
         (when (zerop bytes-read)
           (error "Could not read enough bytes from the input to fulfill the START requirement in ~S" 'copy-stream))
         (incf input-position bytes-read)))

And I _think_ according to http://www.lispworks.com/documentation/HyperSpec/Body/m_loop.htm, the :WHILE expression can't precede the :FOR expression.
&lt;/pre&gt;</description>
    <dc:creator>Greg Pfeil</dc:creator>
    <dc:date>2012-03-19T18:07:55</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.lisp.alexandria.devel/400">
    <title>#'shuffle docstring is misleading</title>
    <link>http://comments.gmane.org/gmane.lisp.alexandria.devel/400</link>
    <description>&lt;pre&gt;#'shuffle docstring states that “Permuted sequence may share storage
with the original one.”  Actually it destructively modifies the
sequence.  In the case of vectors the two might be the same, but in the
case of lists I would say that something like (sort (copy-list l) …)
shares storage with the original list but (sort l …) does more than
that.


_______________________________________________
alexandria-devel mailing list
alexandria-devel&amp;lt; at &amp;gt;common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/alexandria-devel
&lt;/pre&gt;</description>
    <dc:creator>Orivej Desh</dc:creator>
    <dc:date>2012-03-19T12:37:12</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.lisp.alexandria.devel/399">
    <title>latest alexandria doesn't build on ECL due tonon-standard LOOP</title>
    <link>http://comments.gmane.org/gmane.lisp.alexandria.devel/399</link>
    <description>&lt;pre&gt;Hello.

Alexandria in the latest quicklisp has a regression comparing to quicklisp 2012-02-08.

It doesn't build on ECL because on non-standard LOOP construct (it is tolerated
by most Lisps, but not by ECL; see here: http://comments.gmane.org/gmane.lisp.ecl.general/3344). 

The compiler complains about copy-stream method in io.lisp. Build logs:
https://cl-test-grid.appspot.com/blob?key=AMIfv97xRRWJgLOa5TvS78VriRK9mQ82myVc2VvHrnzvREBQSFMWQFVdpUO0nxfxKAgdBYZN_xr956y0xt7gKmwm-qa-DBpcWhdshsqTrTxeRN_VGYWjXVpVkHxpj5XV7Dbb0nOs8zQ0plRFDzBZgH7tNcChyLBwlA

Best regards,
- Anton
&lt;/pre&gt;</description>
    <dc:creator>Anton Vodonosov</dc:creator>
    <dc:date>2012-03-14T14:27:24</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.lisp.alexandria.devel/397">
    <title>ALEXANDRIA:COPY-STREAM broken</title>
    <link>http://comments.gmane.org/gmane.lisp.alexandria.devel/397</link>
    <description>&lt;pre&gt;ALEXANDRIA:COPY-STREAM currently calls (&amp;lt; start end) even when END is
NIL. This breaks COPY-FILE unconditionally and COPY-STREAM whenever END
(or, less likely, START) is NIL.

Zach
&lt;/pre&gt;</description>
    <dc:creator>Zach Beane</dc:creator>
    <dc:date>2012-03-06T20:20:49</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.lisp.alexandria.devel/395">
    <title>PARSE-BODY printing its argument</title>
    <link>http://comments.gmane.org/gmane.lisp.alexandria.devel/395</link>
    <description>&lt;pre&gt;Hi,

For some reason, whenever I use the function PARSE-BODY, the argument BODY
that is passed to it is printed (tested in SBCL and Clisp).

Clisp:

[4]&amp;gt; (alexandria.0.dev:parse-body '((declare (optimize speed)) (+ x y)))

(DECLARE (OPTIMIZE SPEED))
(+ X Y)
((+ X Y)) ;
((DECLARE (OPTIMIZE SPEED))) ;
NIL


SBCL:

* (parse-body '((declare (optimize speed)) (+ x y)))

(DECLARE (OPTIMIZE SPEED))
(+ X Y)
((+ X Y))
((DECLARE (OPTIMIZE SPEED)))
NIL


I'm using Alexandria of Quicklisp.
_______________________________________________
alexandria-devel mailing list
alexandria-devel&amp;lt; at &amp;gt;common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/alexandria-devel
&lt;/pre&gt;</description>
    <dc:creator>Gustavo Henrique Milaré</dc:creator>
    <dc:date>2012-03-01T21:15:13</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.lisp.alexandria.devel/391">
    <title>9 new unexpected test failures on CLISP</title>
    <link>http://comments.gmane.org/gmane.lisp.alexandria.devel/391</link>
    <description>&lt;pre&gt;Hello.

The alexandria version in the recent quicklisp has 9 unexpected failures on CLISP:

   ALEXANDRIA-TESTS::MEAN.1, 
   ALEXANDRIA-TESTS::MEAN.2, ALEXANDRIA-TESTS::MEAN.3, 
   ALEXANDRIA-TESTS::MEAN.4, ALEXANDRIA-TESTS::MEDIAN.1, 
   ALEXANDRIA-TESTS::MEDIAN.2, ALEXANDRIA-TESTS::MEDIAN.3, 
   ALEXANDRIA-TESTS::VARIANCE.1, ALEXANDRIA-TESTS::STANDARD-DEVIATION.1.

The library test log:
https://cl-test-grid.appspot.com/blob?key=AMIfv960NH7TxHvJO5_RSARVN0mmN_31Jlb74sx3q5njqk959i8ZkQeOxBRrZ4XKXnCBM8BTiA9d1OLpU_CqU5sBAnOK_aTxu2_rMtMnCMN_YMZxKq-MF3m6l0sHWRFXeQciOnpc-eabtE1VyLi5Btb_ZDtd60dDsA
&lt;/pre&gt;</description>
    <dc:creator>Anton Vodonosov</dc:creator>
    <dc:date>2012-02-13T01:25:21</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.lisp.alexandria.devel/390">
    <title>reverting patch</title>
    <link>http://comments.gmane.org/gmane.lisp.alexandria.devel/390</link>
    <description>&lt;pre&gt;Hi,

I have been trying to reach Nikodemus Siivola for a while but didn't
get a response, so I thought I would write here hoping that someone
can help me.

Nikodemus admitted my "generic MEAN and MEDIAN, new function
DISPLACE-ARRAY" patch to Alexandria 11 days ago.  This was meant to be
an initial patch, followed by others, with the final goal of making
mean, median and variance generic.  The first patch dealt with MEAN
and MEDIAN.

I would like to ask that this patch is removed from Alexandria for the
time being, for the following two reasons:

1. The generic variance I wrote would not support the :BIASED keyword,
in fact, only "unbiased" variance makes sense in certain situations.
Since :BIASED T is the default, this would break existing code in a
silent manner, which is not desirable.

2. The new function DISPLACE-ARRAY is badly designed: the keyword
defaults handle what turns out to be a rarely used corner case for me.
I would rather keep the old functionality, already present in
CL-NUM-UTILS.

I am sorr&lt;/pre&gt;</description>
    <dc:creator>Tamas Papp</dc:creator>
    <dc:date>2012-02-01T10:55:49</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.lisp.alexandria.devel/388">
    <title>patch for generic variance and standard-deviation</title>
    <link>http://comments.gmane.org/gmane.lisp.alexandria.devel/388</link>
    <description>&lt;pre&gt;_______________________________________________
alexandria-devel mailing list
alexandria-devel&amp;lt; at &amp;gt;common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/alexandria-devel
&lt;/pre&gt;</description>
    <dc:creator>Tamas Papp</dc:creator>
    <dc:date>2012-01-21T15:05:26</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.lisp.alexandria.devel/383">
    <title>[PATCH] Fixes to make Alexandria work with:invert readtable case</title>
    <link>http://comments.gmane.org/gmane.lisp.alexandria.devel/383</link>
    <description>&lt;pre&gt;Hi,

I have included a patch to make Alexandria work with :invert readtable case. Fixed also the tests to work with :invert readtable case.

Best regards,

Jyrki Jaakkola
_______________________________________________
alexandria-devel mailing list
alexandria-devel&amp;lt; at &amp;gt;common-lisp.net
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/alexandria-devel
&lt;/pre&gt;</description>
    <dc:creator>Jyrki Jaakkola</dc:creator>
    <dc:date>2012-01-20T11:22:49</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.lisp.alexandria.devel/376">
    <title>[PATCH] lazy-evaluate the default value inENSURE-GETHASH</title>
    <link>http://comments.gmane.org/gmane.lisp.alexandria.devel/376</link>
    <description>&lt;pre&gt;I'm using a hash-table as a cache, and had a problem with
ensure-gethash. Some example code / output:

CL-USER&amp;gt; (let ((h (make-hash-table)))
  (alexandria:ensure-gethash :x h (progn (format T "expensive
computation~%") 1))
  (alexandria:ensure-gethash :x h (progn (format T "expensive
computation~%") 1)))
expensive computation
expensive computation
1
T
CL-USER&amp;gt;

This patch (created using git format-patch origin/master) converts
ENSURE-GETHASH to a macro that only evaluates the default if we get to
the setf branch. Has a check to create and call a lambda if the default
value looks complicated (using CONSTANTP).

After applying my patch, here's the output:
CL-USER&amp;gt; (let ((h (make-hash-table)))
  (alexandria:ensure-gethash :x h (progn (format T "expensive
computation~%") 1))
  (alexandria:ensure-gethash :x h (progn (format T "expensive
computation~%") 1)))
expensive computation
1
T
CL-USER&amp;gt;

Thoughts?

Thanks,

&lt;/pre&gt;</description>
    <dc:creator>Ryan Davis</dc:creator>
    <dc:date>2011-12-21T18:30:59</dc:date>
  </item>
  <textinput rdf:about="http://search.gmane.org/?group=$group=gmane.lisp.alexandria.devel">
    <title>Search Engine</title>
    <description>Search the mailing list at Gmane</description>
    <name>query</name>
    <link>http://search.gmane.org/?group=$group=gmane.lisp.alexandria.devel</link>
  </textinput>
</rdf:RDF>

