--- /dev/null
+Return-Path: <teythoon@jade-hamburg.de>\r
+X-Original-To: notmuch@notmuchmail.org\r
+Delivered-To: notmuch@notmuchmail.org\r
+Received: from localhost (localhost [127.0.0.1])\r
+ by olra.theworths.org (Postfix) with ESMTP id 1D203431FC2\r
+ for <notmuch@notmuchmail.org>; Tue, 21 Feb 2012 01:15:25 -0800 (PST)\r
+X-Virus-Scanned: Debian amavisd-new at olra.theworths.org\r
+X-Amavis-Alert: BAD HEADER SECTION, Duplicate header field: "Date"\r
+X-Spam-Flag: NO\r
+X-Spam-Score: 0.432\r
+X-Spam-Level: \r
+X-Spam-Status: No, score=0.432 tagged_above=-999 required=5\r
+ tests=[INVALID_DATE=0.432] autolearn=disabled\r
+Received: from olra.theworths.org ([127.0.0.1])\r
+ by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)\r
+ with ESMTP id 4s1K-+oysRRY for <notmuch@notmuchmail.org>;\r
+ Tue, 21 Feb 2012 01:15:21 -0800 (PST)\r
+Received: from mail.cryptobitch.de (cryptobitch.de [88.198.7.68])\r
+ (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits))\r
+ (No client certificate requested)\r
+ by olra.theworths.org (Postfix) with ESMTPS id 61A49431FAF\r
+ for <notmuch@notmuchmail.org>; Tue, 21 Feb 2012 01:15:21 -0800 (PST)\r
+Received: from mail.jade-hamburg.de (unknown [85.183.11.228])\r
+ (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits))\r
+ (No client certificate requested)\r
+ by mail.cryptobitch.de (Postfix) with ESMTPSA id DCE7953122A\r
+ for <notmuch@notmuchmail.org>; Tue, 21 Feb 2012 10:15:19 +0100 (CET)\r
+Received: by mail.jade-hamburg.de (Postfix, from userid 401)\r
+ id 601CADF2A4; Tue, 21 Feb 2012 10:15:19 +0100 (CET)\r
+Received: from thinkbox.jade-hamburg.de\r
+ (dslb-088-075-032-221.pools.arcor-ip.net [88.75.32.221])\r
+ (using TLSv1 with cipher AES256-SHA (256/256 bits))\r
+ (No client certificate requested) (Authenticated sender: teythoon)\r
+ by mail.jade-hamburg.de (Postfix) with ESMTPSA id 25E61DF2A1;\r
+ Tue, 21 Feb 2012 10:15:13 +0100 (CET)\r
+Received: from teythoon by thinkbox.jade-hamburg.de with local (Exim 4.77)\r
+ (envelope-from <teythoon@thinkbox.jade-hamburg.de>)\r
+ id 1RzloT-0005aC-O7; Tue, 21 Feb 2012 10:15:09 +0100\r
+Content-Type: text/plain; charset="utf-8"\r
+MIME-Version: 1.0\r
+Content-Transfer-Encoding: quoted-printable\r
+From: Justus Winter <4winter@informatik.uni-hamburg.de>\r
+User-Agent: alot/0.21+\r
+To: Daniel Schoepe <daniel@schoepe.org>,\r
+ Philippe LeCavalier <support@plecavalier.com>, notmuch@notmuchmail.org\r
+References: <87r4xur3rv.fsf@plc.plecavalier.com>\r
+ <87fweamenf.fsf@schoepe.localhost>\r
+In-Reply-To: <87fweamenf.fsf@schoepe.localhost>\r
+Date: Tue, 21 Feb 2012 09:15:09 -0000\r
+Message-ID: <20120221091509.8534.59492@thinkbox.jade-hamburg.de>\r
+Subject: Re: nomuch_addresses.py\r
+Date: Tue, 21 Feb 2012 10:15:09 +0100\r
+X-BeenThere: notmuch@notmuchmail.org\r
+X-Mailman-Version: 2.1.13\r
+Precedence: list\r
+List-Id: "Use and development of the notmuch mail system."\r
+ <notmuch.notmuchmail.org>\r
+List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,\r
+ <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>\r
+List-Archive: <http://notmuchmail.org/pipermail/notmuch>\r
+List-Post: <mailto:notmuch@notmuchmail.org>\r
+List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>\r
+List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,\r
+ <mailto:notmuch-request@notmuchmail.org?subject=subscribe>\r
+X-List-Received-Date: Tue, 21 Feb 2012 09:15:25 -0000\r
+\r
+Quoting Daniel Schoepe (2012-02-17 02:28:52) [emphasis mine]:\r
+>Just for completeness: I'm using the nice nottoomuch-addresses.pl script\r
+>[1] by Tomi Ollila *which doesn't require any bindings* and is incredibly\r
+>fast (after generating an initial address database).\r
+\r
+I don't get it. The perl script isn't using any library bindings,\r
+mainly because there are no libnotmuch bindings for perl. *But* it\r
+does call the notmuch binary which is worse:\r
+\r
+* incredibly high overhead (fork&exec) compared to a simple function\r
+ call (plus maybe some kind of ffi)\r
+* manual and error prone serialization of ''function arguments''\r
+* manual and error prone deserialization of ''return values''\r
+* very limited error reporting and handling capabilities\r
+* any kind of resource (think handle to a xapian database) is lost if\r
+ the process exists resulting in further overhead if the binary is\r
+ called multiple times\r
+\r
+I do get the feeling that it is perceived as desirable not to require\r
+any kind of notmuch bindings (David once said something similar about\r
+nmbug).\r
+\r
+If that's the case I'd love to hear why and if there's anything we can\r
+do about it.\r
+\r
+Justus\r