From unknown Mon Aug 18 11:09:28 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#44529 <44529@debbugs.gnu.org> To: bug#44529 <44529@debbugs.gnu.org> Subject: Status: [PATCH] Convert apropos-internal from C to Lisp Reply-To: bug#44529 <44529@debbugs.gnu.org> Date: Mon, 18 Aug 2025 18:09:28 +0000 retitle 44529 [PATCH] Convert apropos-internal from C to Lisp reassign 44529 emacs submitter 44529 Stefan Kangas severity 44529 wishlist tag 44529 fixed patch thanks From debbugs-submit-bounces@debbugs.gnu.org Mon Nov 09 05:39:09 2020 Received: (at submit) by debbugs.gnu.org; 9 Nov 2020 10:39:09 +0000 Received: from localhost ([127.0.0.1]:34098 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kc4Zp-0006Rk-CV for submit@debbugs.gnu.org; Mon, 09 Nov 2020 05:39:09 -0500 Received: from lists.gnu.org ([209.51.188.17]:46054) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kc4Zk-0006RZ-N9 for submit@debbugs.gnu.org; Mon, 09 Nov 2020 05:39:08 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:43554) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kc4Zk-00026u-Ga for bug-gnu-emacs@gnu.org; Mon, 09 Nov 2020 05:39:04 -0500 Received: from mail-ed1-f46.google.com ([209.85.208.46]:38345) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kc4Zi-00050u-FF for bug-gnu-emacs@gnu.org; Mon, 09 Nov 2020 05:39:04 -0500 Received: by mail-ed1-f46.google.com with SMTP id k9so8180819edo.5 for ; Mon, 09 Nov 2020 02:39:01 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:mime-version:date:message-id:subject:to; bh=s+65ETulsQ/gBl4hZgvtfL2CnVXgRqUcakwXeeNNqcw=; b=FzwodQKfEveC7Hdze3AxTJ+BX0GWo0gqWA9ilJcPQXsuIWiP0/p3y7FQo+d1iVRFrh OUFMT6+N96JZOldgTa1y0lrvM8wpIL5t7Y0FdG/cOkFj4bPQwfdTuFvE4o/8m5Ofo2jC GUza4EnCKNVF2fcfldjCdX9y9618XFBTNe5RzY7pm0tqL8SOHTCXS538tRnv+lizbmiH G5fAeoNo2M5wNuIK0gnNHzZChHOIUadNTs4wAmpjyW6+cRzaVW+uo2Mriv9pGNlJ9heY gT7y2vvARbdjKOb2/IG/nYz5VKSizADRaKSENnJ1Jd7PXN0PiBk7RzJq5cTEU22XDdlY Hoew== X-Gm-Message-State: AOAM531eszwq2TbbDBysb9AUlLQEIZ4xNvXI1MD9Az020kdZu1X7lFrP kqw+GW0DZFLSWLdquNEUnZOgRGpUap5QI5YM8SWEpWWq X-Google-Smtp-Source: ABdhPJx65OoNToccTcNY1NQDB5y65geZS11CHLfVQU+kVxjS/VUFiN7Tzp4bqp8yUvjYRpupG25sIQvxW/7Zkl94Bd4= X-Received: by 2002:aa7:c9cb:: with SMTP id i11mr14986805edt.100.1604918340362; Mon, 09 Nov 2020 02:39:00 -0800 (PST) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Mon, 9 Nov 2020 02:38:59 -0800 From: Stefan Kangas X-Debbugs-CC: monnier@iro.umontreal.ca MIME-Version: 1.0 Date: Mon, 9 Nov 2020 02:38:59 -0800 Message-ID: Subject: [PATCH] Convert apropos-internal from C to Lisp To: bug-gnu-emacs@gnu.org Content-Type: multipart/mixed; boundary="000000000000924f7605b3aa2b50" Received-SPF: pass client-ip=209.85.208.46; envelope-from=stefankangas@gmail.com; helo=mail-ed1-f46.google.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/11/09 05:39:00 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Spam_score_int: -13 X-Spam_score: -1.4 X-Spam_bar: - X-Spam_report: (-1.4 / 5.0 requ) BAYES_00=-1.9, FREEMAIL_FORGED_FROMDOMAIN=0.25, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.25, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-Spam-Score: 0.7 (/) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.8 (-) --000000000000924f7605b3aa2b50 Content-Type: text/plain; charset="UTF-8" Severity: wishlist Stefan Monnier writes: > I discovered that apropos-internal is defined in keymap.c for a reason > that escapes me (it really should be moved to apropos.el). Yes. So I was actually going to propose the attached patch. In my testing, it is as fast as the C version (especially when byte-compiled), which would match my intuition from reading the code. (benchmark-run 10 (apropos-command "test")) => (0.12032415399999999 2 0.014772391999999995) ; C => (0.13513192100000002 2 0.017216643000000004) ; Lisp (benchmark-run 10 (apropos "x")) => (3.846117816 131 1.092690677) ; C => (4.218219444 145 1.2153865740000003) ; Lisp Any comments or objections? --000000000000924f7605b3aa2b50 Content-Type: text/x-diff; charset="US-ASCII"; name="0001-Convert-apropos-internal-from-C-to-Lisp.patch" Content-Disposition: attachment; filename="0001-Convert-apropos-internal-from-C-to-Lisp.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: 230d9404c493b078_0.1 RnJvbSAxMzI0ODEyYjQwMzE1ZjAyMjk5MWI5ZjkyZmFlODk2YjM0M2FlNmQ0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBTdGVmYW4gS2FuZ2FzIDxzdGVmYW5AbWFyeGlzdC5zZT4KRGF0 ZTogU3VuLCA4IE5vdiAyMDIwIDIxOjA0OjQ0ICswMTAwClN1YmplY3Q6IFtQQVRDSF0gQ29udmVy dCBhcHJvcG9zLWludGVybmFsIGZyb20gQyB0byBMaXNwCgpUaGlzIHJ1bnMgaW5zaWduaWZpY2Fu dGx5IGZhc3RlciBpbiBDLCBhbmQgaXMgYWxyZWFkeSBmYXN0IGVub3VnaCBvbgpyZWFzb25hYmx5 IG1vZGVybiBoYXJkd2FyZS4gIFdlIG1pZ2h0IGFzIHdlbGwgbGlmdCBpdCB0byBMaXNwLgpUaGlz IGJlbmNobWFyayBjYW4gYmUgdXNlZCB0byB2ZXJpZnk6CgogIChiZW5jaG1hcmstcnVuIDEwIChh cHJvcG9zLWNvbW1hbmQgInRlc3QiKSkKICA9PiAoMC4xMjAzMjQxNTM5OTk5OTk5OSAyIDAuMDE0 NzcyMzkxOTk5OTk5OTk1KSA7IEMKICA9PiAoMC4xMzUxMzE5MjEwMDAwMDAwMiAyIDAuMDE3MjE2 NjQzMDAwMDAwMDA0KSA7IExpc3AKCiogbGlzcC9hcHJvcG9zLmVsIChhcHJvcG9zLWludGVybmFs KTogTmV3IGRlZnVuLCBjb252ZXJ0ZWQgZnJvbSBDLgoqIHNyYy9rZXltYXAuYyAoRmFwcm9wb3Nf aW50ZXJuYWwpOiBSZW1vdmUgZGVmdW4uCihhcHJvcG9zX2FjY3VtKTogUmVtb3ZlIGZ1bmN0aW9u LgooYXByb3Bvc19wcmVkaWNhdGUsIGFwcm9wb3NfYWNjdW11bGF0ZSk6IFJlbW92ZSB2YXJpYWJs ZXMuCihzeW1zX29mX2tleW1hcCk6IFJlbW92ZSBkZWZzdWJyIGZvciBGYXByb3Bvc19pbnRlcm5h bCwgYW5kCmRlZmluaXRpb25zIG9mIHRoZSBhYm92ZSB2YXJpYWJsZXMuCiogdGVzdC9zcmMva2V5 bWFwLXRlc3RzLmVsIChrZXltYXAtYXByb3Bvcy1pbnRlcm5hbCkKKGtleW1hcC1hcHJvcG9zLWlu dGVybmFsL3ByZWRpY2F0ZSk6IE1vdmUgdGVzdHMgZnJvbSBoZXJlLi4uCiogdGVzdC9saXNwL2Fw cm9wb3MtdGVzdHMuZWwgKGFwcm9wb3MtYXByb3Bvcy1pbnRlcm5hbCkKKGFwcm9wb3MtYXByb3Bv cy1pbnRlcm5hbC9wcmVkaWNhdGUpOiAuLi50byBoZXJlLgotLS0KIGxpc3AvYXByb3Bvcy5lbCAg ICAgICAgICAgIHwgMTQgKysrKysrKysrKysrKysKIHNyYy9rZXltYXAuYyAgICAgICAgICAgICAg IHwgMzkgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIHRlc3QvbGlzcC9h cHJvcG9zLXRlc3RzLmVsIHwgMTAgKysrKysrKysrKwogdGVzdC9zcmMva2V5bWFwLXRlc3RzLmVs ICAgfCAxMCAtLS0tLS0tLS0tCiA0IGZpbGVzIGNoYW5nZWQsIDI0IGluc2VydGlvbnMoKyksIDQ5 IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpc3AvYXByb3Bvcy5lbCBiL2xpc3AvYXByb3Bv cy5lbAppbmRleCA5ZGViZGZiMTljLi44OTk1N2YxOWZlIDEwMDY0NAotLS0gYS9saXNwL2Fwcm9w b3MuZWwKKysrIGIvbGlzcC9hcHJvcG9zLmVsCkBAIC00OTYsNiArNDk2LDIwIEBAIGFwcm9wb3Mt bXVsdGktdHlwZQogICAiSWYgbm9uLW5pbCwgdGhpcyBhcHJvcG9zIHF1ZXJ5IGNvbmNlcm5zIG11 bHRpcGxlIHR5cGVzLgogVGhpcyBpcyB1c2VkIHRvIGRlY2lkZSB3aGV0aGVyIHRvIHByaW50IHRo ZSByZXN1bHQncyB0eXBlIG9yIG5vdC4iKQogCis7OzsjIyNhdXRvbG9hZAorKGRlZnVuIGFwcm9w b3MtaW50ZXJuYWwgKHJlZ2V4cCAmb3B0aW9uYWwgcHJlZGljYXRlKQorICAiU2hvdyBhbGwgc3lt Ym9scyB3aG9zZSBuYW1lcyBjb250YWluIG1hdGNoIGZvciBSRUdFWFAuCitJZiBvcHRpb25hbCAy bmQgYXJnIFBSRURJQ0FURSBpcyBub24tbmlsLCAoZnVuY2FsbCBQUkVESUNBVEUgU1lNQk9MKSBp cyBkb25lCitmb3IgZWFjaCBzeW1ib2wgYW5kIGEgc3ltYm9sIGlzIG1lbnRpb25lZCBvbmx5IGlm IHRoYXQgcmV0dXJucyBub24tbmlsLgorUmV0dXJuIGxpc3Qgb2Ygc3ltYm9scyBmb3VuZC4iCisg IChsZXQgKGZvdW5kKQorICAgIChtYXBhdG9tcyAobGFtYmRhIChzeW1ib2wpCisgICAgICAgICAg ICAgICAgKHdoZW4gKGFuZCAoc3RyaW5nLW1hdGNoIHJlZ2V4cCAoc3ltYm9sLW5hbWUgc3ltYm9s KSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIChvciAobm90IHByZWRpY2F0ZSkKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAoZnVuY2FsbCBwcmVkaWNhdGUgc3ltYm9sKSkpCisg ICAgICAgICAgICAgICAgICAocHVzaCBzeW1ib2wgZm91bmQpKSkpCisgICAgKHNvcnQgZm91bmQg IydzdHJpbmctbGVzc3ApKSkKKwogOzs7IyMjYXV0b2xvYWQKIChkZWZ1biBhcHJvcG9zLXVzZXIt b3B0aW9uIChwYXR0ZXJuICZvcHRpb25hbCBkby1hbGwpCiAgICJTaG93IHVzZXIgb3B0aW9ucyB0 aGF0IG1hdGNoIFBBVFRFUk4uCmRpZmYgLS1naXQgYS9zcmMva2V5bWFwLmMgYi9zcmMva2V5bWFw LmMKaW5kZXggZTViNDc4MTA3Ni4uN2RjNGJkM2Y4ZSAxMDA2NDQKLS0tIGEvc3JjL2tleW1hcC5j CisrKyBiL3NyYy9rZXltYXAuYwpAQCAtMzIyMyw0OSArMzIyMywxMSBAQCBkZXNjcmliZV92ZWN0 b3IgKExpc3BfT2JqZWN0IHZlY3RvciwgTGlzcF9PYmplY3QgcHJlZml4LCBMaXNwX09iamVjdCBh cmdzLAogICAgIH0KIH0KIAwKLS8qIEFwcm9wb3MgLSBmaW5kaW5nIGFsbCBzeW1ib2xzIHdob3Nl IG5hbWVzIG1hdGNoIGEgcmVnZXhwLgkJKi8KLXN0YXRpYyBMaXNwX09iamVjdCBhcHJvcG9zX3By ZWRpY2F0ZTsKLXN0YXRpYyBMaXNwX09iamVjdCBhcHJvcG9zX2FjY3VtdWxhdGU7Ci0KLXN0YXRp YyB2b2lkCi1hcHJvcG9zX2FjY3VtIChMaXNwX09iamVjdCBzeW1ib2wsIExpc3BfT2JqZWN0IHN0 cmluZykKLXsKLSAgcmVnaXN0ZXIgTGlzcF9PYmplY3QgdGVtOwotCi0gIHRlbSA9IEZzdHJpbmdf bWF0Y2ggKHN0cmluZywgRnN5bWJvbF9uYW1lIChzeW1ib2wpLCBRbmlsKTsKLSAgaWYgKCFOSUxQ ICh0ZW0pICYmICFOSUxQIChhcHJvcG9zX3ByZWRpY2F0ZSkpCi0gICAgdGVtID0gY2FsbDEgKGFw cm9wb3NfcHJlZGljYXRlLCBzeW1ib2wpOwotICBpZiAoIU5JTFAgKHRlbSkpCi0gICAgYXByb3Bv c19hY2N1bXVsYXRlID0gRmNvbnMgKHN5bWJvbCwgYXByb3Bvc19hY2N1bXVsYXRlKTsKLX0KLQot REVGVU4gKCJhcHJvcG9zLWludGVybmFsIiwgRmFwcm9wb3NfaW50ZXJuYWwsIFNhcHJvcG9zX2lu dGVybmFsLCAxLCAyLCAwLAotICAgICAgIGRvYzogLyogU2hvdyBhbGwgc3ltYm9scyB3aG9zZSBu YW1lcyBjb250YWluIG1hdGNoIGZvciBSRUdFWFAuCi1JZiBvcHRpb25hbCAybmQgYXJnIFBSRURJ Q0FURSBpcyBub24tbmlsLCAoZnVuY2FsbCBQUkVESUNBVEUgU1lNQk9MKSBpcyBkb25lCi1mb3Ig ZWFjaCBzeW1ib2wgYW5kIGEgc3ltYm9sIGlzIG1lbnRpb25lZCBvbmx5IGlmIHRoYXQgcmV0dXJu cyBub24tbmlsLgotUmV0dXJuIGxpc3Qgb2Ygc3ltYm9scyBmb3VuZC4gICovKQotICAoTGlzcF9P YmplY3QgcmVnZXhwLCBMaXNwX09iamVjdCBwcmVkaWNhdGUpCi17Ci0gIExpc3BfT2JqZWN0IHRl bTsKLSAgQ0hFQ0tfU1RSSU5HIChyZWdleHApOwotICBhcHJvcG9zX3ByZWRpY2F0ZSA9IHByZWRp Y2F0ZTsKLSAgYXByb3Bvc19hY2N1bXVsYXRlID0gUW5pbDsKLSAgbWFwX29iYXJyYXkgKFZvYmFy cmF5LCBhcHJvcG9zX2FjY3VtLCByZWdleHApOwotICB0ZW0gPSBGc29ydCAoYXByb3Bvc19hY2N1 bXVsYXRlLCBRc3RyaW5nX2xlc3NwKTsKLSAgYXByb3Bvc19hY2N1bXVsYXRlID0gUW5pbDsKLSAg YXByb3Bvc19wcmVkaWNhdGUgPSBRbmlsOwotICByZXR1cm4gdGVtOwotfQotDAogdm9pZAogc3lt c19vZl9rZXltYXAgKHZvaWQpCiB7CiAgIERFRlNZTSAoUWtleW1hcCwgImtleW1hcCIpOwogICBE RUZTWU0gKFFkZXNjcmliZV9tYXBfdHJlZSwgImRlc2NyaWJlLW1hcC10cmVlIik7Ci0gIHN0YXRp Y3BybyAoJmFwcm9wb3NfcHJlZGljYXRlKTsKLSAgc3RhdGljcHJvICgmYXByb3Bvc19hY2N1bXVs YXRlKTsKLSAgYXByb3Bvc19wcmVkaWNhdGUgPSBRbmlsOwotICBhcHJvcG9zX2FjY3VtdWxhdGUg PSBRbmlsOwogCiAgIERFRlNZTSAoUWtleW1hcF9jYW5vbmljYWxpemUsICJrZXltYXAtY2Fub25p Y2FsaXplIik7CiAKQEAgLTM0MDksNyArMzM3MSw2IEBAIHN5bXNfb2Zfa2V5bWFwICh2b2lkKQog ICBkZWZzdWJyICgmU3RleHRfY2hhcl9kZXNjcmlwdGlvbik7CiAgIGRlZnN1YnIgKCZTd2hlcmVf aXNfaW50ZXJuYWwpOwogICBkZWZzdWJyICgmU2Rlc2NyaWJlX2J1ZmZlcl9iaW5kaW5ncyk7Ci0g IGRlZnN1YnIgKCZTYXByb3Bvc19pbnRlcm5hbCk7CiB9CiAKIHZvaWQKZGlmZiAtLWdpdCBhL3Rl c3QvbGlzcC9hcHJvcG9zLXRlc3RzLmVsIGIvdGVzdC9saXNwL2Fwcm9wb3MtdGVzdHMuZWwKaW5k ZXggNGM1NTIyZDE0Yy4uNzM4NmRkMDNmZiAxMDA2NDQKLS0tIGEvdGVzdC9saXNwL2Fwcm9wb3Mt dGVzdHMuZWwKKysrIGIvdGVzdC9saXNwL2Fwcm9wb3MtdGVzdHMuZWwKQEAgLTI5LDYgKzI5LDE2 IEBACiAocmVxdWlyZSAnYXByb3BvcykKIChyZXF1aXJlICdlcnQpCiAKKyhlcnQtZGVmdGVzdCBh cHJvcG9zLWFwcm9wb3MtaW50ZXJuYWwgKCkKKyAgKHNob3VsZCAoZXF1YWwgKGFwcm9wb3MtaW50 ZXJuYWwgIl5uZXh0LWxpbmUkIikgJyhuZXh0LWxpbmUpKSkKKyAgKHNob3VsZCAoPj0gKGxlbmd0 aCAoYXByb3Bvcy1pbnRlcm5hbCAiXmhlbHAiKSkgMTAwKSkKKyAgKHNob3VsZC1ub3QgKGFwcm9w b3MtaW50ZXJuYWwgIl50ZXN0LWEtbWlzc2luZy1zeW1ib2wtZm9vLWJhci16b3QkIikpKQorCiso ZXJ0LWRlZnRlc3QgYXByb3Bvcy1hcHJvcG9zLWludGVybmFsL3ByZWRpY2F0ZSAoKQorICAoc2hv dWxkIChlcXVhbCAoYXByb3Bvcy1pbnRlcm5hbCAiXm5leHQtbGluZSQiICMnY29tbWFuZHApICco bmV4dC1saW5lKSkpCisgIChzaG91bGQgKD49IChsZW5ndGggKGFwcm9wb3MtaW50ZXJuYWwgIl5o ZWxwIiAjJ2NvbW1hbmRwKSkgMTUpKQorICAoc2hvdWxkLW5vdCAoYXByb3Bvcy1pbnRlcm5hbCAi Xm5leHQtbGluZSQiICMna2V5bWFwcCkpKQorCiAoZXJ0LWRlZnRlc3QgYXByb3Bvcy10ZXN0cy13 b3Jkcy10by1yZWdleHAtMSAoKQogICAobGV0ICgocmUgKGFwcm9wb3Mtd29yZHMtdG8tcmVnZXhw ICcoImZvbyIgImJhciIpICJiYXoiKSkpCiAgICAgKHNob3VsZCAoc3RyaW5nLW1hdGNoLXAgcmUg ImZvb2JhemJhciIpKQpkaWZmIC0tZ2l0IGEvdGVzdC9zcmMva2V5bWFwLXRlc3RzLmVsIGIvdGVz dC9zcmMva2V5bWFwLXRlc3RzLmVsCmluZGV4IGUzZGQ4NDIwZDcuLjZkZTk4NTQ3ZDIgMTAwNjQ0 Ci0tLSBhL3Rlc3Qvc3JjL2tleW1hcC10ZXN0cy5lbAorKysgYi90ZXN0L3NyYy9rZXltYXAtdGVz dHMuZWwKQEAgLTE3MCwxNiArMTcwLDYgQEAga2V5bWFwLXdoZXJlLWlzLWludGVybmFsL3ByZWZl cnJlZC1tb2RpZmllci1pcy1hLXN0cmluZwogICAgICAgICAgICAgKHdoZXJlLWlzLWludGVybmFs ICdleGVjdXRlLWV4dGVuZGVkLWNvbW1hbmQgZ2xvYmFsLW1hcCB0KSkKICAgICAgICAgICBbI3g4 MDAwMDc4XSkpKQogCi0oZXJ0LWRlZnRlc3Qga2V5bWFwLWFwcm9wb3MtaW50ZXJuYWwgKCkKLSAg KHNob3VsZCAoZXF1YWwgKGFwcm9wb3MtaW50ZXJuYWwgIl5uZXh0LWxpbmUkIikgJyhuZXh0LWxp bmUpKSkKLSAgKHNob3VsZCAoPj0gKGxlbmd0aCAoYXByb3Bvcy1pbnRlcm5hbCAiXmhlbHAiKSkg MTAwKSkKLSAgKHNob3VsZC1ub3QgKGFwcm9wb3MtaW50ZXJuYWwgIl50ZXN0LWEtbWlzc2luZy1z eW1ib2wtZm9vLWJhci16dXQkIikpKQotCi0oZXJ0LWRlZnRlc3Qga2V5bWFwLWFwcm9wb3MtaW50 ZXJuYWwvcHJlZGljYXRlICgpCi0gIChzaG91bGQgKGVxdWFsIChhcHJvcG9zLWludGVybmFsICJe bmV4dC1saW5lJCIgIydjb21tYW5kcCkgJyhuZXh0LWxpbmUpKSkKLSAgKHNob3VsZCAoPj0gKGxl bmd0aCAoYXByb3Bvcy1pbnRlcm5hbCAiXmhlbHAiICMnY29tbWFuZHApKSAxNSkpCi0gIChzaG91 bGQtbm90IChhcHJvcG9zLWludGVybmFsICJebmV4dC1saW5lJCIgIydrZXltYXBwKSkpCi0KIChw cm92aWRlICdrZXltYXAtdGVzdHMpCiAKIDs7OyBrZXltYXAtdGVzdHMuZWwgZW5kcyBoZXJlCi0t IAoyLjI4LjAKCg== --000000000000924f7605b3aa2b50-- From debbugs-submit-bounces@debbugs.gnu.org Mon Nov 09 08:51:39 2020 Received: (at 44529) by debbugs.gnu.org; 9 Nov 2020 13:51:39 +0000 Received: from localhost ([127.0.0.1]:34298 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kc7a7-0004pE-56 for submit@debbugs.gnu.org; Mon, 09 Nov 2020 08:51:39 -0500 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:33940) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kc7a5-0004oz-11 for 44529@debbugs.gnu.org; Mon, 09 Nov 2020 08:51:37 -0500 Received: from pmg3.iro.umontreal.ca (localhost [127.0.0.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 3AEA5440CCD; Mon, 9 Nov 2020 08:51:31 -0500 (EST) Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 12F28440C42; Mon, 9 Nov 2020 08:51:30 -0500 (EST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1604929890; bh=8f64LC1BbCPw9wuh+S3hwOqPPjSJvZ1f7q0KA74x0Yk=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From; b=Ll38vjZcjvJKmkagos/qfDo9x4MfTpjqV8dHx14/3bHxvFg1SToSIXXWeNOT243hB AnqVVsSSPUIOstty78nlh5beExO9fcb+HwWrSK/7/IF4LE005ZKUtT3OM1nM7wAn9n ZvVaxvD6a22osUMN90r+WEEJb4tj2YoxEn6vaEytAwUHbzdEoRaU7Zmx4Y6CQOZtmM NpMUcxH+nk/rdrHfgKt86yXe0QRAEYwEEhiZskNpzNuNUgwmisx7EnNVfSSrWAh4Ki jLC/jD5tqmKQInVnYxxW+XixAZOor+zWFvD6Fg2Yg4cCWkX+gN5FQRlXa2Pg81mtnx LNV/JA7cOafFQ== Received: from alfajor (unknown [157.52.9.240]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 92D031201E7; Mon, 9 Nov 2020 08:51:29 -0500 (EST) From: Stefan Monnier To: Stefan Kangas Subject: Re: bug#44529: [PATCH] Convert apropos-internal from C to Lisp Message-ID: References: Date: Mon, 09 Nov 2020 08:51:28 -0500 In-Reply-To: (Stefan Kangas's message of "Mon, 9 Nov 2020 02:38:59 -0800") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL -0.071 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 44529 Cc: 44529@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Any comments or objections? LGTM, Stefan From debbugs-submit-bounces@debbugs.gnu.org Mon Nov 09 11:02:05 2020 Received: (at 44529) by debbugs.gnu.org; 9 Nov 2020 16:02:05 +0000 Received: from localhost ([127.0.0.1]:35295 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kc9cK-0007tp-Qq for submit@debbugs.gnu.org; Mon, 09 Nov 2020 11:02:05 -0500 Received: from eggs.gnu.org ([209.51.188.92]:41468) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kc9cJ-0007o4-Jw for 44529@debbugs.gnu.org; Mon, 09 Nov 2020 11:02:04 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]:45765) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kc9cD-0000hZ-L8; Mon, 09 Nov 2020 11:01:57 -0500 Received: from [176.228.60.248] (port=4857 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kc9cB-0000r9-73; Mon, 09 Nov 2020 11:01:56 -0500 Date: Mon, 09 Nov 2020 18:02:00 +0200 Message-Id: <83tuty4iyv.fsf@gnu.org> From: Eli Zaretskii To: Stefan Kangas In-Reply-To: (message from Stefan Kangas on Mon, 9 Nov 2020 02:38:59 -0800) Subject: Re: bug#44529: [PATCH] Convert apropos-internal from C to Lisp References: X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 44529 Cc: 44529@debbugs.gnu.org, monnier@iro.umontreal.ca X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Stefan Kangas > Date: Mon, 9 Nov 2020 02:38:59 -0800 > Cc: monnier@iro.umontreal.ca > > > I discovered that apropos-internal is defined in keymap.c for a reason > > that escapes me (it really should be moved to apropos.el). > > Yes. So I was actually going to propose the attached patch. In my > testing, it is as fast as the C version (especially when byte-compiled), > which would match my intuition from reading the code. > > (benchmark-run 10 > (apropos-command "test")) > => (0.12032415399999999 2 0.014772391999999995) ; C > => (0.13513192100000002 2 0.017216643000000004) ; Lisp > > (benchmark-run 10 > (apropos "x")) > => (3.846117816 131 1.092690677) ; C > => (4.218219444 145 1.2153865740000003) ; Lisp 20% slowdown is not negligible, at least not in principle. Let's wait for more people to voice their opinions on this aspect. > Any comments or objections? A bother: apropos.el is not preloaded, so please double-check that none of the preloaded files call apropos-internal, otherwise that would mean we need to preload apropos.el, which I think is undesirable. Thanks. From debbugs-submit-bounces@debbugs.gnu.org Mon Nov 09 15:44:34 2020 Received: (at 44529) by debbugs.gnu.org; 9 Nov 2020 20:44:34 +0000 Received: from localhost ([127.0.0.1]:35701 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kcE1i-0000T3-4l for submit@debbugs.gnu.org; Mon, 09 Nov 2020 15:44:34 -0500 Received: from mail-ej1-f54.google.com ([209.85.218.54]:38001) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kcE1g-0000Sq-KQ for 44529@debbugs.gnu.org; Mon, 09 Nov 2020 15:44:33 -0500 Received: by mail-ej1-f54.google.com with SMTP id za3so14262852ejb.5 for <44529@debbugs.gnu.org>; Mon, 09 Nov 2020 12:44:32 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:in-reply-to:references:mime-version:date :message-id:subject:to:cc; bh=5M9yLJWbBkmeVOFAeMdkmbOQs+5y5mCmOnz8GMQJSuI=; b=DSALhiseIQXUgjSuuW2QEIaLZSKBWOiGyzWak6zuY9N3fHJoiLGSlQlzkjwS696yNR COSK8DqiJH/8wJ95i4/fIhZhpTVMpOLs226kWTikJbxZQBTubLNzhlnVH/2MpSeYIVSu a1iZJGGTektHkE83qJdUbMdsFsY5QvuIQ/QtlUNpAVdga6hb8RRbu1kn6cHqaA0p47QB An39KZOg97AvraBC02OQZGfsjpXHUgDjhkS+CtQVQJFs/0EZlm4qKcbjULFl/wmp7F+f RWxYzTmdT0bOQQPu0XTXNg6VoNACMrNlXTWMuAHoij1UNj5h58ZSVTWE8oSZoTT7ttuu axWw== X-Gm-Message-State: AOAM533/sSaMqgruMvZTu2bcMo1aLPfhQM706fQ1Sy2ONAhJB1nyKpiS aJ1wKStyAfby+EmcqUAI10B8d4opXoz61oawTPk= X-Google-Smtp-Source: ABdhPJyXNIyIdbeVRCXkUEGs44ulCryJ5yFqxra6Ex8UJ1Tj/IQx8sF08imld2AZH4w0M8nGcfanRI3/5SqeWSf+r9k= X-Received: by 2002:a17:906:a00c:: with SMTP id p12mr17425523ejy.249.1604954666905; Mon, 09 Nov 2020 12:44:26 -0800 (PST) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Mon, 9 Nov 2020 12:44:26 -0800 From: Stefan Kangas In-Reply-To: <83tuty4iyv.fsf@gnu.org> References: <83tuty4iyv.fsf@gnu.org> MIME-Version: 1.0 Date: Mon, 9 Nov 2020 12:44:26 -0800 Message-ID: Subject: Re: bug#44529: [PATCH] Convert apropos-internal from C to Lisp To: Eli Zaretskii Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.5 (/) X-Debbugs-Envelope-To: 44529 Cc: 44529@debbugs.gnu.org, monnier@iro.umontreal.ca X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.5 (/) Eli Zaretskii writes: >> (benchmark-run 10 >> (apropos "x")) >> => (3.846117816 131 1.092690677) ; C >> => (4.218219444 145 1.2153865740000003) ; Lisp > > 20% slowdown is not negligible, at least not in principle. Let's wait > for more people to voice their opinions on this aspect. Unless I'm missing something, the slowdown should be around 10%. (FWIW, the figure of 0.38 or 0.42 seconds is for the more unlikely string with one character. In the more realistic scenario with a slightly longer string, we see a difference between 0.012 and 0.013 seconds.) > A bother: apropos.el is not preloaded, so please double-check that > none of the preloaded files call apropos-internal, otherwise that > would mean we need to preload apropos.el, which I think is > undesirable. I only see one call in a preloaded file: ./lisp/progmodes/elisp-mode.el:873: (dolist (sym (apropos-internal regexp)) (This is from a `cl-defmethod' for `xref-backend-apropos'.) Does this mean we have to preload apropos.el? I don't understand how, so I'm probably missing something. Thanks for commenting. From debbugs-submit-bounces@debbugs.gnu.org Mon Nov 09 22:27:40 2020 Received: (at 44529) by debbugs.gnu.org; 10 Nov 2020 03:27:40 +0000 Received: from localhost ([127.0.0.1]:36036 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kcKJn-0003HM-Sh for submit@debbugs.gnu.org; Mon, 09 Nov 2020 22:27:40 -0500 Received: from eggs.gnu.org ([209.51.188.92]:42148) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kcKJm-0003H8-0i for 44529@debbugs.gnu.org; Mon, 09 Nov 2020 22:27:38 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]:54539) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kcKJg-0005ab-6K; Mon, 09 Nov 2020 22:27:32 -0500 Received: from [176.228.60.248] (port=3571 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kcKJe-0006rN-Ol; Mon, 09 Nov 2020 22:27:31 -0500 Date: Tue, 10 Nov 2020 05:27:40 +0200 Message-Id: <83tutx3n83.fsf@gnu.org> From: Eli Zaretskii To: Stefan Kangas In-Reply-To: (message from Stefan Kangas on Mon, 9 Nov 2020 12:44:26 -0800) Subject: Re: bug#44529: [PATCH] Convert apropos-internal from C to Lisp References: <83tuty4iyv.fsf@gnu.org> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 44529 Cc: 44529@debbugs.gnu.org, monnier@iro.umontreal.ca X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Stefan Kangas > Date: Mon, 9 Nov 2020 12:44:26 -0800 > Cc: 44529@debbugs.gnu.org, monnier@iro.umontreal.ca > > > A bother: apropos.el is not preloaded, so please double-check that > > none of the preloaded files call apropos-internal, otherwise that > > would mean we need to preload apropos.el, which I think is > > undesirable. > > I only see one call in a preloaded file: > > ./lisp/progmodes/elisp-mode.el:873: (dolist (sym (apropos-internal regexp)) > > (This is from a `cl-defmethod' for `xref-backend-apropos'.) > > Does this mean we have to preload apropos.el? Or move this Lisp implementation to another file, which is already preloaded. > I don't understand how, so I'm probably missing something. Because if we don't, every Emacs session will load it right at the start. From debbugs-submit-bounces@debbugs.gnu.org Tue Nov 10 08:14:19 2020 Received: (at 44529) by debbugs.gnu.org; 10 Nov 2020 13:14:19 +0000 Received: from localhost ([127.0.0.1]:36724 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kcTTX-00068r-7i for submit@debbugs.gnu.org; Tue, 10 Nov 2020 08:14:19 -0500 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:15266) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kcTTV-00068e-I2 for 44529@debbugs.gnu.org; Tue, 10 Nov 2020 08:14:17 -0500 Received: from pmg2.iro.umontreal.ca (localhost.localdomain [127.0.0.1]) by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id 53E5680AF9; Tue, 10 Nov 2020 08:14:12 -0500 (EST) Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id DCED78096B; Tue, 10 Nov 2020 08:14:10 -0500 (EST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1605014050; bh=E51hTalIOkLmiGL6UJtA6J2oDcbqECB7mrPIsRUEAxI=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From; b=bcafWo6C+DDyqcHAwPwDsB3A7xacY628LOsxBZBGJK9wkJQB900V6hPXWmR3AGWlW eXHGCcxHuwr3HHeIOe6LxBuB66w/MJ763Ox79J95VRnRP1LZQyTZM6TircIeMRAiHB +DTIrszLIYRWdJ35RQmMaVWwakjhmU4fset3UQJG6w/X1J1k9sfcNE9iLJs0Ox1mKV Ob6HdueyjXDjyqF//nO8cpmHgKRDEF8gaFPsrvzK0VVj7ggHCHNb2JHex5ucUD0WPT 4q7O9G7EpEliBqR634Yr+ITilJaMeJrlJQv3Fja3hNFtGUsnfEmgZJbtbWYKGatVUD PYx4Y1Ph6YhVw== Received: from alfajor (unknown [157.52.9.240]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 6181C1202BD; Tue, 10 Nov 2020 08:14:10 -0500 (EST) From: Stefan Monnier To: Eli Zaretskii Subject: Re: bug#44529: [PATCH] Convert apropos-internal from C to Lisp Message-ID: References: <83tuty4iyv.fsf@gnu.org> <83tutx3n83.fsf@gnu.org> Date: Tue, 10 Nov 2020 08:14:01 -0500 In-Reply-To: <83tutx3n83.fsf@gnu.org> (Eli Zaretskii's message of "Tue, 10 Nov 2020 05:27:40 +0200") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL -0.076 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 44529 Cc: 44529@debbugs.gnu.org, Stefan Kangas X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Because if we don't, every Emacs session will load it right at the > start. I don't see that: elisp-mode.el calls `apropos-internal` only from `xref-backend-apropos`, which AFAICT is not used "right at the start" but only after loading `xref.el` which is itself not preloaded. Stefan From debbugs-submit-bounces@debbugs.gnu.org Tue Nov 10 11:01:41 2020 Received: (at 44529) by debbugs.gnu.org; 10 Nov 2020 16:01:41 +0000 Received: from localhost ([127.0.0.1]:38724 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kcW5U-0006kl-Nn for submit@debbugs.gnu.org; Tue, 10 Nov 2020 11:01:41 -0500 Received: from eggs.gnu.org ([209.51.188.92]:59070) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kcW5K-0006kL-Ou for 44529@debbugs.gnu.org; Tue, 10 Nov 2020 11:01:39 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]:35033) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kcW5E-0003K0-M9; Tue, 10 Nov 2020 11:01:24 -0500 Received: from [176.228.60.248] (port=2171 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kcW5D-0003zM-8v; Tue, 10 Nov 2020 11:01:24 -0500 Date: Tue, 10 Nov 2020 18:01:33 +0200 Message-Id: <834klx2obm.fsf@gnu.org> From: Eli Zaretskii To: Stefan Monnier In-Reply-To: (message from Stefan Monnier on Tue, 10 Nov 2020 08:14:01 -0500) Subject: Re: bug#44529: [PATCH] Convert apropos-internal from C to Lisp References: <83tuty4iyv.fsf@gnu.org> <83tutx3n83.fsf@gnu.org> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 44529 Cc: 44529@debbugs.gnu.org, stefan@marxist.se X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Stefan Monnier > Cc: Stefan Kangas , 44529@debbugs.gnu.org > Date: Tue, 10 Nov 2020 08:14:01 -0500 > > > Because if we don't, every Emacs session will load it right at the > > start. > > I don't see that: elisp-mode.el calls `apropos-internal` only from > `xref-backend-apropos`, which AFAICT is not used "right at the > start" but only after loading `xref.el` which is itself not preloaded. I don't want to rely on such shaky assumptions: the code in elisp-mode.el can change any moment. apropos-internal was always available in Emacs, so let's leave it always available by putting it in subr.el or somesuch. From debbugs-submit-bounces@debbugs.gnu.org Tue Nov 10 14:50:13 2020 Received: (at 44529) by debbugs.gnu.org; 10 Nov 2020 19:50:13 +0000 Received: from localhost ([127.0.0.1]:38950 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kcZee-0008Kw-Vw for submit@debbugs.gnu.org; Tue, 10 Nov 2020 14:50:13 -0500 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:6319) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kcZec-0008Ke-Om for 44529@debbugs.gnu.org; Tue, 10 Nov 2020 14:50:11 -0500 Received: from pmg2.iro.umontreal.ca (localhost.localdomain [127.0.0.1]) by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id 0C10C80ABE; Tue, 10 Nov 2020 14:50:05 -0500 (EST) Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id A5C7780855; Tue, 10 Nov 2020 14:50:03 -0500 (EST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1605037803; bh=xLJgi/pHJYvL0P7SwdQhxjIRpYb6MyoADJKWkp+OT2Y=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From; b=LNK6UrXHmrc8jTXjNmK21zIq2DaWQKfs3Pgw+o8EwWwuXzEZMmJcwchoa0NBj73mf JaYP2Abk3Zju0NiLAKUuTywAsxbJr+m+/OhHvlgp0c4FcuoMiFHqOx+iKh6ZnguCrT OfVSaRWcqreZI8CEGHVMhKr/wLEDD9PoXIJm2T1HJ+APB8IXt7oXdB+nYupXY9p+8c N8lGUyZqfbUB6bUqulwqeovBma0Tb7+Sr4KAwDwbVCfdcWC4ECgz4e/2BWpCQvawHs p6HFy+zcfVW23IJWVg2WzhxpZNISWihKwWASKjJ/gVc9UoZWoUYXn6aVZZONiCMF3X jsp8S4M19rYOg== Received: from alfajor (unknown [157.52.9.240]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 7D64D120732; Tue, 10 Nov 2020 14:50:03 -0500 (EST) From: Stefan Monnier To: Eli Zaretskii Subject: Re: bug#44529: [PATCH] Convert apropos-internal from C to Lisp Message-ID: References: <83tuty4iyv.fsf@gnu.org> <83tutx3n83.fsf@gnu.org> <834klx2obm.fsf@gnu.org> Date: Tue, 10 Nov 2020 14:50:02 -0500 In-Reply-To: <834klx2obm.fsf@gnu.org> (Eli Zaretskii's message of "Tue, 10 Nov 2020 18:01:33 +0200") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL -0.076 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 44529 Cc: 44529@debbugs.gnu.org, stefan@marxist.se X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) >> I don't see that: elisp-mode.el calls `apropos-internal` only from >> `xref-backend-apropos`, which AFAICT is not used "right at the >> start" but only after loading `xref.el` which is itself not preloaded. > > I don't want to rely on such shaky assumptions: the code in > elisp-mode.el can change any moment. > > apropos-internal was always available in Emacs, so let's leave it > always available by putting it in subr.el or somesuch. If we autoload it, it will work just as well without having to move it outside of its most natural habitat. Stefan From debbugs-submit-bounces@debbugs.gnu.org Tue Nov 10 15:08:14 2020 Received: (at 44529) by debbugs.gnu.org; 10 Nov 2020 20:08:14 +0000 Received: from localhost ([127.0.0.1]:38989 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kcZw5-0002Sj-Vv for submit@debbugs.gnu.org; Tue, 10 Nov 2020 15:08:14 -0500 Received: from eggs.gnu.org ([209.51.188.92]:32862) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kcZw4-0002SV-Ns for 44529@debbugs.gnu.org; Tue, 10 Nov 2020 15:08:13 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]:39794) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kcZvz-00053b-AK; Tue, 10 Nov 2020 15:08:07 -0500 Received: from [176.228.60.248] (port=1520 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kcZvy-0001Z6-Q0; Tue, 10 Nov 2020 15:08:07 -0500 Date: Tue, 10 Nov 2020 22:08:17 +0200 Message-Id: <83k0ut0yby.fsf@gnu.org> From: Eli Zaretskii To: Stefan Monnier In-Reply-To: (message from Stefan Monnier on Tue, 10 Nov 2020 14:50:02 -0500) Subject: Re: bug#44529: [PATCH] Convert apropos-internal from C to Lisp References: <83tuty4iyv.fsf@gnu.org> <83tutx3n83.fsf@gnu.org> <834klx2obm.fsf@gnu.org> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 44529 Cc: 44529@debbugs.gnu.org, stefan@marxist.se X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Stefan Monnier > Cc: stefan@marxist.se, 44529@debbugs.gnu.org > Date: Tue, 10 Nov 2020 14:50:02 -0500 > > > apropos-internal was always available in Emacs, so let's leave it > > always available by putting it in subr.el or somesuch. > > If we autoload it, it will work just as well without having to move it > outside of its most natural habitat. I don't want it to become autoloaded, it could break something. Why risk that? From debbugs-submit-bounces@debbugs.gnu.org Sun Nov 15 20:07:24 2020 Received: (at 44529) by debbugs.gnu.org; 16 Nov 2020 01:07:24 +0000 Received: from localhost ([127.0.0.1]:54643 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1keSzM-0005Xf-8W for submit@debbugs.gnu.org; Sun, 15 Nov 2020 20:07:24 -0500 Received: from mail-ej1-f41.google.com ([209.85.218.41]:36844) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1keSzJ-0005XQ-HZ for 44529@debbugs.gnu.org; Sun, 15 Nov 2020 20:07:22 -0500 Received: by mail-ej1-f41.google.com with SMTP id o21so22123482ejb.3 for <44529@debbugs.gnu.org>; Sun, 15 Nov 2020 17:07:21 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:in-reply-to:references:mime-version:date :message-id:subject:to:cc; bh=HJGJokvUf9v4GH+gdsSr5pE/bEnFNiirlncpyxMof7s=; b=l+FzdRfSS/9mbC2INeVxwrAv3Sg3aSqqQiYySNCOy5J2Q/4pIR4eYcWOruibthbc9B Y+Tpal5a5ACuoe+qk/wwCZpZ/xK4GSDiTstZvjvbCK1lsKXPyk7V7t9m4pvRwK4+Klz9 F4hrhgZQhivWJ+K0jWxCRXzZmQjGgZ0GU8QdweTBOc8ulxzxZEfwr7XnGQeYWp4rS1ZT pIK6fp4dqFYTeLbeYOHl12uUfXDBzM/+KBRgdsPhlCQSoNPRnHh0KRAJgQ5M03G297+8 z+z0m4jdVIhkVZXmp3h3Hf1cSKjZwFwcpWl8M7Z8XUqwK/F50BpstVdl8i3r1YcMTZKj Zz8A== X-Gm-Message-State: AOAM532Tvd4QMpek/DUfKrnLJODRM44JSr1wYck7ohhsMSWF35Yw47Iw BEj/uImJHbzLmebSkyrREyhYe0ZITtuc8K3R7k8= X-Google-Smtp-Source: ABdhPJxISm/EZGTzx5062b4vtEa86uAUs//k8zjdy9xbh2pzNYC/0tuXZPB9uSSoQPUKZQjtmhi7Tc+QNUJZBoX0Jb0= X-Received: by 2002:a17:906:519b:: with SMTP id y27mr12084957ejk.25.1605488835821; Sun, 15 Nov 2020 17:07:15 -0800 (PST) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Sun, 15 Nov 2020 17:07:14 -0800 From: Stefan Kangas In-Reply-To: <83k0ut0yby.fsf@gnu.org> References: <83tuty4iyv.fsf@gnu.org> <83tutx3n83.fsf@gnu.org> <834klx2obm.fsf@gnu.org> <83k0ut0yby.fsf@gnu.org> MIME-Version: 1.0 Date: Sun, 15 Nov 2020 17:07:14 -0800 Message-ID: Subject: Re: bug#44529: [PATCH] Convert apropos-internal from C to Lisp To: Eli Zaretskii , Stefan Monnier Content-Type: multipart/mixed; boundary="000000000000c038e805b42effcd" X-Spam-Score: 0.5 (/) X-Debbugs-Envelope-To: 44529 Cc: 44529@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.5 (/) --000000000000c038e805b42effcd Content-Type: text/plain; charset="UTF-8" Eli Zaretskii writes: >> If we autoload it, it will work just as well without having to move it >> outside of its most natural habitat. > > I don't want it to become autoloaded, it could break something. Why > risk that? The attached patch moves it to subr.el instead, as requested. --000000000000c038e805b42effcd Content-Type: text/x-diff; charset="US-ASCII"; name="0001-Convert-apropos-internal-from-C-to-Lisp.patch" Content-Disposition: attachment; filename="0001-Convert-apropos-internal-from-C-to-Lisp.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: ed9bec2edeb16577_0.1 RnJvbSAwN2FiMGQzZGNkNTFiZTM2ZmNlZTI0YjhiN2ZiZTY2MDQwZWUzZDYyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBTdGVmYW4gS2FuZ2FzIDxzdGVmYW5AbWFyeGlzdC5zZT4KRGF0 ZTogU3VuLCA4IE5vdiAyMDIwIDIxOjA0OjQ0ICswMTAwClN1YmplY3Q6IFtQQVRDSF0gQ29udmVy dCBhcHJvcG9zLWludGVybmFsIGZyb20gQyB0byBMaXNwCgpUaGlzIHJ1bnMgaW5zaWduaWZpY2Fu dGx5IGZhc3RlciBpbiBDLCBhbmQgaXMgYWxyZWFkeSBmYXN0IGVub3VnaCBvbgpyZWFzb25hYmx5 IG1vZGVybiBoYXJkd2FyZS4gIFdlIG1pZ2h0IGFzIHdlbGwgbGlmdCBpdCB0byBMaXNwLgpUaGlz IGJlbmNobWFyayBjYW4gYmUgdXNlZCB0byB2ZXJpZnk6CgogIChiZW5jaG1hcmstcnVuIDEwIChh cHJvcG9zLWNvbW1hbmQgInRlc3QiKSkKICA9PiAoMC4xMjAzMjQxNTM5OTk5OTk5OSAyIDAuMDE0 NzcyMzkxOTk5OTk5OTk1KSA7IEMKICA9PiAoMC4xMzUxMzE5MjEwMDAwMDAwMiAyIDAuMDE3MjE2 NjQzMDAwMDAwMDA0KSA7IExpc3AKCiogbGlzcC9zdWJyLmVsIChhcHJvcG9zLWludGVybmFsKTog TmV3IGRlZnVuLCBjb252ZXJ0ZWQgZnJvbSBDLgoqIHNyYy9rZXltYXAuYyAoRmFwcm9wb3NfaW50 ZXJuYWwpOiBSZW1vdmUgZGVmdW4uCihhcHJvcG9zX2FjY3VtKTogUmVtb3ZlIGZ1bmN0aW9uLgoo YXByb3Bvc19wcmVkaWNhdGUsIGFwcm9wb3NfYWNjdW11bGF0ZSk6IFJlbW92ZSB2YXJpYWJsZXMu CihzeW1zX29mX2tleW1hcCk6IFJlbW92ZSBkZWZzdWJyIGZvciBGYXByb3Bvc19pbnRlcm5hbCwg YW5kCmRlZmluaXRpb25zIG9mIHRoZSBhYm92ZSB2YXJpYWJsZXMuCiogdGVzdC9zcmMva2V5bWFw LXRlc3RzLmVsIChrZXltYXAtYXByb3Bvcy1pbnRlcm5hbCkKKGtleW1hcC1hcHJvcG9zLWludGVy bmFsL3ByZWRpY2F0ZSk6IE1vdmUgdGVzdHMgZnJvbSBoZXJlLi4uCiogdGVzdC9saXNwL3N1YnIt dGVzdHMuZWwgKGFwcm9wb3MtYXByb3Bvcy1pbnRlcm5hbCkKKGFwcm9wb3MtYXByb3Bvcy1pbnRl cm5hbC9wcmVkaWNhdGUpOiAuLi50byBoZXJlLgotLS0KIGxpc3Avc3Vici5lbCAgICAgICAgICAg ICB8IDE2ICsrKysrKysrKysrKysrKysKIHNyYy9rZXltYXAuYyAgICAgICAgICAgICB8IDM5IC0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogdGVzdC9saXNwL3N1YnItdGVz dHMuZWwgIHwgMTMgKysrKysrKysrKysrKwogdGVzdC9zcmMva2V5bWFwLXRlc3RzLmVsIHwgMTAg LS0tLS0tLS0tLQogNCBmaWxlcyBjaGFuZ2VkLCAyOSBpbnNlcnRpb25zKCspLCA0OSBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9saXNwL3N1YnIuZWwgYi9saXNwL3N1YnIuZWwKaW5kZXggNmU5 ZjY2ZmU5Ny4uZGUwYzQ5Zjc1NiAxMDA2NDQKLS0tIGEvbGlzcC9zdWJyLmVsCisrKyBiL2xpc3Av c3Vici5lbApAQCAtNTc4Niw2ICs1Nzg2LDIyIEBAIHdpdGgtbXV0ZXgKIAkgICAocHJvZ24gLEBi b2R5KQogCSAobXV0ZXgtdW5sb2NrICxzeW0pKSkpKQogCisMCis7OzsgQXByb3Bvcy4KKworKGRl ZnVuIGFwcm9wb3MtaW50ZXJuYWwgKHJlZ2V4cCAmb3B0aW9uYWwgcHJlZGljYXRlKQorICAiU2hv dyBhbGwgc3ltYm9scyB3aG9zZSBuYW1lcyBjb250YWluIG1hdGNoIGZvciBSRUdFWFAuCitJZiBv cHRpb25hbCAybmQgYXJnIFBSRURJQ0FURSBpcyBub24tbmlsLCAoZnVuY2FsbCBQUkVESUNBVEUg U1lNQk9MKSBpcyBkb25lCitmb3IgZWFjaCBzeW1ib2wgYW5kIGEgc3ltYm9sIGlzIG1lbnRpb25l ZCBvbmx5IGlmIHRoYXQgcmV0dXJucyBub24tbmlsLgorUmV0dXJuIGxpc3Qgb2Ygc3ltYm9scyBm b3VuZC4iCisgIChsZXQgKGZvdW5kKQorICAgIChtYXBhdG9tcyAobGFtYmRhIChzeW1ib2wpCisg ICAgICAgICAgICAgICAgKHdoZW4gKGFuZCAoc3RyaW5nLW1hdGNoIHJlZ2V4cCAoc3ltYm9sLW5h bWUgc3ltYm9sKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIChvciAobm90IHByZWRpY2F0 ZSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZnVuY2FsbCBwcmVkaWNhdGUgc3lt Ym9sKSkpCisgICAgICAgICAgICAgICAgICAocHVzaCBzeW1ib2wgZm91bmQpKSkpCisgICAgKHNv cnQgZm91bmQgIydzdHJpbmctbGVzc3ApKSkKKwogDAogOzs7IE1pc2MuCiAKZGlmZiAtLWdpdCBh L3NyYy9rZXltYXAuYyBiL3NyYy9rZXltYXAuYwppbmRleCAxODFkY2RhZDNhLi5jNzU0NjBmOWMz IDEwMDY0NAotLS0gYS9zcmMva2V5bWFwLmMKKysrIGIvc3JjL2tleW1hcC5jCkBAIC0zMjIzLDQ5 ICszMjIzLDExIEBAIGRlc2NyaWJlX3ZlY3RvciAoTGlzcF9PYmplY3QgdmVjdG9yLCBMaXNwX09i amVjdCBwcmVmaXgsIExpc3BfT2JqZWN0IGFyZ3MsCiAgICAgfQogfQogDAotLyogQXByb3BvcyAt IGZpbmRpbmcgYWxsIHN5bWJvbHMgd2hvc2UgbmFtZXMgbWF0Y2ggYSByZWdleHAuCQkqLwotc3Rh dGljIExpc3BfT2JqZWN0IGFwcm9wb3NfcHJlZGljYXRlOwotc3RhdGljIExpc3BfT2JqZWN0IGFw cm9wb3NfYWNjdW11bGF0ZTsKLQotc3RhdGljIHZvaWQKLWFwcm9wb3NfYWNjdW0gKExpc3BfT2Jq ZWN0IHN5bWJvbCwgTGlzcF9PYmplY3Qgc3RyaW5nKQotewotICByZWdpc3RlciBMaXNwX09iamVj dCB0ZW07Ci0KLSAgdGVtID0gRnN0cmluZ19tYXRjaCAoc3RyaW5nLCBGc3ltYm9sX25hbWUgKHN5 bWJvbCksIFFuaWwpOwotICBpZiAoIU5JTFAgKHRlbSkgJiYgIU5JTFAgKGFwcm9wb3NfcHJlZGlj YXRlKSkKLSAgICB0ZW0gPSBjYWxsMSAoYXByb3Bvc19wcmVkaWNhdGUsIHN5bWJvbCk7Ci0gIGlm ICghTklMUCAodGVtKSkKLSAgICBhcHJvcG9zX2FjY3VtdWxhdGUgPSBGY29ucyAoc3ltYm9sLCBh cHJvcG9zX2FjY3VtdWxhdGUpOwotfQotCi1ERUZVTiAoImFwcm9wb3MtaW50ZXJuYWwiLCBGYXBy b3Bvc19pbnRlcm5hbCwgU2Fwcm9wb3NfaW50ZXJuYWwsIDEsIDIsIDAsCi0gICAgICAgZG9jOiAv KiBTaG93IGFsbCBzeW1ib2xzIHdob3NlIG5hbWVzIGNvbnRhaW4gbWF0Y2ggZm9yIFJFR0VYUC4K LUlmIG9wdGlvbmFsIDJuZCBhcmcgUFJFRElDQVRFIGlzIG5vbi1uaWwsIChmdW5jYWxsIFBSRURJ Q0FURSBTWU1CT0wpIGlzIGRvbmUKLWZvciBlYWNoIHN5bWJvbCBhbmQgYSBzeW1ib2wgaXMgbWVu dGlvbmVkIG9ubHkgaWYgdGhhdCByZXR1cm5zIG5vbi1uaWwuCi1SZXR1cm4gbGlzdCBvZiBzeW1i b2xzIGZvdW5kLiAgKi8pCi0gIChMaXNwX09iamVjdCByZWdleHAsIExpc3BfT2JqZWN0IHByZWRp Y2F0ZSkKLXsKLSAgTGlzcF9PYmplY3QgdGVtOwotICBDSEVDS19TVFJJTkcgKHJlZ2V4cCk7Ci0g IGFwcm9wb3NfcHJlZGljYXRlID0gcHJlZGljYXRlOwotICBhcHJvcG9zX2FjY3VtdWxhdGUgPSBR bmlsOwotICBtYXBfb2JhcnJheSAoVm9iYXJyYXksIGFwcm9wb3NfYWNjdW0sIHJlZ2V4cCk7Ci0g IHRlbSA9IEZzb3J0IChhcHJvcG9zX2FjY3VtdWxhdGUsIFFzdHJpbmdfbGVzc3ApOwotICBhcHJv cG9zX2FjY3VtdWxhdGUgPSBRbmlsOwotICBhcHJvcG9zX3ByZWRpY2F0ZSA9IFFuaWw7Ci0gIHJl dHVybiB0ZW07Ci19Ci0MCiB2b2lkCiBzeW1zX29mX2tleW1hcCAodm9pZCkKIHsKICAgREVGU1lN IChRa2V5bWFwLCAia2V5bWFwIik7CiAgIERFRlNZTSAoUWRlc2NyaWJlX21hcF90cmVlLCAiZGVz Y3JpYmUtbWFwLXRyZWUiKTsKLSAgc3RhdGljcHJvICgmYXByb3Bvc19wcmVkaWNhdGUpOwotICBz dGF0aWNwcm8gKCZhcHJvcG9zX2FjY3VtdWxhdGUpOwotICBhcHJvcG9zX3ByZWRpY2F0ZSA9IFFu aWw7Ci0gIGFwcm9wb3NfYWNjdW11bGF0ZSA9IFFuaWw7CiAKICAgREVGU1lNIChRa2V5bWFwX2Nh bm9uaWNhbGl6ZSwgImtleW1hcC1jYW5vbmljYWxpemUiKTsKIApAQCAtMzQwOSw3ICszMzcxLDYg QEAgc3ltc19vZl9rZXltYXAgKHZvaWQpCiAgIGRlZnN1YnIgKCZTdGV4dF9jaGFyX2Rlc2NyaXB0 aW9uKTsKICAgZGVmc3ViciAoJlN3aGVyZV9pc19pbnRlcm5hbCk7CiAgIGRlZnN1YnIgKCZTZGVz Y3JpYmVfYnVmZmVyX2JpbmRpbmdzKTsKLSAgZGVmc3ViciAoJlNhcHJvcG9zX2ludGVybmFsKTsK IH0KIAogdm9pZApkaWZmIC0tZ2l0IGEvdGVzdC9saXNwL3N1YnItdGVzdHMuZWwgYi90ZXN0L2xp c3Avc3Vici10ZXN0cy5lbAppbmRleCAwMzVjMDY0ZDc1Li4wZjg4M2VmNmE3IDEwMDY0NAotLS0g YS90ZXN0L2xpc3Avc3Vici10ZXN0cy5lbAorKysgYi90ZXN0L2xpc3Avc3Vici10ZXN0cy5lbApA QCAtNDg0LDUgKzQ4NCwxOCBAQCBzdHJpbmctcmVwbGFjZQogCiAgIChzaG91bGQtZXJyb3IgKHN0 cmluZy1yZXBsYWNlICIiICJ4IiAiYWJjIikpKQogCisMCis7OzsgQXByb3Bvcy4KKworKGVydC1k ZWZ0ZXN0IGFwcm9wb3MtYXByb3Bvcy1pbnRlcm5hbCAoKQorICAoc2hvdWxkIChlcXVhbCAoYXBy b3Bvcy1pbnRlcm5hbCAiXm5leHQtbGluZSQiKSAnKG5leHQtbGluZSkpKQorICAoc2hvdWxkICg+ PSAobGVuZ3RoIChhcHJvcG9zLWludGVybmFsICJeaGVscCIpKSAxMDApKQorICAoc2hvdWxkLW5v dCAoYXByb3Bvcy1pbnRlcm5hbCAiXnRlc3QtYS1taXNzaW5nLXN5bWJvbC1mb28tYmFyLXpvdCQi KSkpCisKKyhlcnQtZGVmdGVzdCBhcHJvcG9zLWFwcm9wb3MtaW50ZXJuYWwvcHJlZGljYXRlICgp CisgIChzaG91bGQgKGVxdWFsIChhcHJvcG9zLWludGVybmFsICJebmV4dC1saW5lJCIgIydjb21t YW5kcCkgJyhuZXh0LWxpbmUpKSkKKyAgKHNob3VsZCAoPj0gKGxlbmd0aCAoYXByb3Bvcy1pbnRl cm5hbCAiXmhlbHAiICMnY29tbWFuZHApKSAxNSkpCisgIChzaG91bGQtbm90IChhcHJvcG9zLWlu dGVybmFsICJebmV4dC1saW5lJCIgIydrZXltYXBwKSkpCisKIChwcm92aWRlICdzdWJyLXRlc3Rz KQogOzs7IHN1YnItdGVzdHMuZWwgZW5kcyBoZXJlCmRpZmYgLS1naXQgYS90ZXN0L3NyYy9rZXlt YXAtdGVzdHMuZWwgYi90ZXN0L3NyYy9rZXltYXAtdGVzdHMuZWwKaW5kZXggNjEwMjM0YzVhMS4u OTAwYWRlN2Y0OCAxMDA2NDQKLS0tIGEvdGVzdC9zcmMva2V5bWFwLXRlc3RzLmVsCisrKyBiL3Rl c3Qvc3JjL2tleW1hcC10ZXN0cy5lbApAQCAtMjAwLDE2ICsyMDAsNiBAQCBrZXltYXAtd2hlcmUt aXMtaW50ZXJuYWwvcHJlZmVycmVkLW1vZGlmaWVyLWlzLWEtc3RyaW5nCiAgICAgICAgICAgICAo d2hlcmUtaXMtaW50ZXJuYWwgJ2V4ZWN1dGUtZXh0ZW5kZWQtY29tbWFuZCBnbG9iYWwtbWFwIHQp KQogICAgICAgICAgIFsjeDgwMDAwNzhdKSkpCiAKLShlcnQtZGVmdGVzdCBrZXltYXAtYXByb3Bv cy1pbnRlcm5hbCAoKQotICAoc2hvdWxkIChlcXVhbCAoYXByb3Bvcy1pbnRlcm5hbCAiXm5leHQt bGluZSQiKSAnKG5leHQtbGluZSkpKQotICAoc2hvdWxkICg+PSAobGVuZ3RoIChhcHJvcG9zLWlu dGVybmFsICJeaGVscCIpKSAxMDApKQotICAoc2hvdWxkLW5vdCAoYXByb3Bvcy1pbnRlcm5hbCAi XnRlc3QtYS1taXNzaW5nLXN5bWJvbC1mb28tYmFyLXp1dCQiKSkpCi0KLShlcnQtZGVmdGVzdCBr ZXltYXAtYXByb3Bvcy1pbnRlcm5hbC9wcmVkaWNhdGUgKCkKLSAgKHNob3VsZCAoZXF1YWwgKGFw cm9wb3MtaW50ZXJuYWwgIl5uZXh0LWxpbmUkIiAjJ2NvbW1hbmRwKSAnKG5leHQtbGluZSkpKQot ICAoc2hvdWxkICg+PSAobGVuZ3RoIChhcHJvcG9zLWludGVybmFsICJeaGVscCIgIydjb21tYW5k cCkpIDE1KSkKLSAgKHNob3VsZC1ub3QgKGFwcm9wb3MtaW50ZXJuYWwgIl5uZXh0LWxpbmUkIiAj J2tleW1hcHApKSkKLQogKHByb3ZpZGUgJ2tleW1hcC10ZXN0cykKIAogOzs7IGtleW1hcC10ZXN0 cy5lbCBlbmRzIGhlcmUKLS0gCjIuMjkuMgoK --000000000000c038e805b42effcd-- From debbugs-submit-bounces@debbugs.gnu.org Mon Nov 16 12:53:03 2020 Received: (at 44529) by debbugs.gnu.org; 16 Nov 2020 17:53:03 +0000 Received: from localhost ([127.0.0.1]:57114 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1keigZ-0007Jh-CH for submit@debbugs.gnu.org; Mon, 16 Nov 2020 12:53:03 -0500 Received: from eggs.gnu.org ([209.51.188.92]:56522) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1keigX-0007Iz-RK for 44529@debbugs.gnu.org; Mon, 16 Nov 2020 12:53:02 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]:37905) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1keigR-0001tt-St; Mon, 16 Nov 2020 12:52:55 -0500 Received: from [176.228.60.248] (port=4507 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1keigQ-0005hm-8Y; Mon, 16 Nov 2020 12:52:55 -0500 Date: Mon, 16 Nov 2020 19:52:46 +0200 Message-Id: <83o8jxrxxt.fsf@gnu.org> From: Eli Zaretskii To: Stefan Kangas In-Reply-To: (message from Stefan Kangas on Sun, 15 Nov 2020 17:07:14 -0800) Subject: Re: bug#44529: [PATCH] Convert apropos-internal from C to Lisp References: <83tuty4iyv.fsf@gnu.org> <83tutx3n83.fsf@gnu.org> <834klx2obm.fsf@gnu.org> <83k0ut0yby.fsf@gnu.org> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 44529 Cc: 44529@debbugs.gnu.org, monnier@iro.umontreal.ca X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Stefan Kangas > Date: Sun, 15 Nov 2020 17:07:14 -0800 > Cc: 44529@debbugs.gnu.org > > The attached patch moves it to subr.el instead, as requested. Thanks. > This runs insignificantly faster in C, and is already fast enough on > reasonably modern hardware. We might as well lift it to Lisp. > This benchmark can be used to verify: > > (benchmark-run 10 (apropos-command "test")) > => (0.12032415399999999 2 0.014772391999999995) ; C > => (0.13513192100000002 2 0.017216643000000004) ; Lisp Btw, did you try with less trivial strings? E.g., what happens if you replace "test" with "set" or "file"? From debbugs-submit-bounces@debbugs.gnu.org Tue Nov 24 20:57:35 2020 Received: (at 44529) by debbugs.gnu.org; 25 Nov 2020 01:57:35 +0000 Received: from localhost ([127.0.0.1]:33676 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1khk3r-0001cu-Db for submit@debbugs.gnu.org; Tue, 24 Nov 2020 20:57:35 -0500 Received: from mail-ej1-f46.google.com ([209.85.218.46]:43798) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1khk3p-0001cg-Mg for 44529@debbugs.gnu.org; Tue, 24 Nov 2020 20:57:34 -0500 Received: by mail-ej1-f46.google.com with SMTP id k27so732202ejs.10 for <44529@debbugs.gnu.org>; Tue, 24 Nov 2020 17:57:33 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:in-reply-to:references:user-agent :mime-version:date:message-id:subject:to:cc; bh=h5i1OTq0H4WXYFQ/Y7z4OylxOLNPIo/K2dqoECMqRX8=; b=XkrNbyNb01pTwsiDZeoPLgeag2R1nRe82m5Sjd2bWd4cVvqj9gVHBiXTLciQWcSkOk Lo7y1jMXCln3scmriBJKcCy8j2dp4MLI07Ob7B1wKKndj6I7OTYuX0J33NnOQb6QnLv4 hBqgBpbXw+fTXHkgp7UgDpUiMn/1HVTPK7dRIj10XYQ1f42CwKY+IfpG3MRx+FSNZKka KJztdjcvgh57cR7mfnaQtM0fmLRH+l1G7M+H1XIO74bzjJFssNW1n4ZNzaRUW6+D/Byy RxFmAO0Ka5SxX3E6OcPx7Fwa8XyHqY3qi9KLBppuVy6mcJgEJTAycSQzTLTxpuPy1OJF ygDA== X-Gm-Message-State: AOAM533feApd9ARkgJeBMgW+ZLBxCfuVaE/v1aPtKjToD+TEGGuU2Q5V xYE94BNKBFV40k9dr3fZZUzWgKbIkgIXqB3qjBA= X-Google-Smtp-Source: ABdhPJzc1q87uyYhmRnPxxO4FKxGe1rtjki4XTccWRaqwiD7LWuvGxZ4oraGO4AAfY7T4yaHw2cTof/gkJWiB0nNvt4= X-Received: by 2002:a17:906:4e90:: with SMTP id v16mr1163203eju.477.1606269447972; Tue, 24 Nov 2020 17:57:27 -0800 (PST) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Tue, 24 Nov 2020 17:57:27 -0800 From: Stefan Kangas In-Reply-To: <83o8jxrxxt.fsf@gnu.org> (Eli Zaretskii's message of "Mon, 16 Nov 2020 19:52:46 +0200") References: <83tuty4iyv.fsf@gnu.org> <83tutx3n83.fsf@gnu.org> <834klx2obm.fsf@gnu.org> <83k0ut0yby.fsf@gnu.org> <83o8jxrxxt.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Date: Tue, 24 Nov 2020 17:57:27 -0800 Message-ID: Subject: Re: bug#44529: [PATCH] Convert apropos-internal from C to Lisp To: Eli Zaretskii Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.5 (/) X-Debbugs-Envelope-To: 44529 Cc: 44529@debbugs.gnu.org, monnier@iro.umontreal.ca X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.5 (/) Eli Zaretskii writes: >> From: Stefan Kangas >> Date: Sun, 15 Nov 2020 17:07:14 -0800 >> Cc: 44529@debbugs.gnu.org >> >> The attached patch moves it to subr.el instead, as requested. > > Thanks. > >> This runs insignificantly faster in C, and is already fast enough on >> reasonably modern hardware. We might as well lift it to Lisp. >> This benchmark can be used to verify: >> >> (benchmark-run 10 (apropos-command "test")) >> => (0.12032415399999999 2 0.014772391999999995) ; C >> => (0.13513192100000002 2 0.017216643000000004) ; Lisp > > Btw, did you try with less trivial strings? E.g., what happens if you > replace "test" with "set" or "file"? (Sorry for the late reply.) I see results consistent with the previously reported 10 % difference, or even slightly better than that: (benchmark-run 10 (apropos-command "file")) => (0.6285004230000001 26 0.176056903) ; C => (0.667433809 26 0.19296271500000006) ; Lisp (/ 0.667433809 0.6285004230000001) => 1.0619 (benchmark-run 10 (apropos-command "set")) => (0.463329467 19 0.12921543499999996) ; C => (0.486383881 19 0.13347332099999998) ; Lisp (/ 0.486383881 0.463329467) => 1.0497 From debbugs-submit-bounces@debbugs.gnu.org Sat Dec 19 13:02:57 2020 Received: (at 44529) by debbugs.gnu.org; 19 Dec 2020 18:02:57 +0000 Received: from localhost ([127.0.0.1]:43095 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kqgZF-000740-AA for submit@debbugs.gnu.org; Sat, 19 Dec 2020 13:02:57 -0500 Received: from mail-pj1-f49.google.com ([209.85.216.49]:34436) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kqgZD-00073l-V2 for 44529@debbugs.gnu.org; Sat, 19 Dec 2020 13:02:56 -0500 Received: by mail-pj1-f49.google.com with SMTP id n3so6110223pjm.1 for <44529@debbugs.gnu.org>; Sat, 19 Dec 2020 10:02:55 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:in-reply-to:references:mime-version:date :message-id:subject:to:cc; bh=gdjKmUIN+76ivsFPmjEwC3531ZS6mLbk+8Fw60052Sc=; b=I5QR5uq2NIYvXdEzwcJFjAaHILqJXgRXVhV6AbrN3S72MM0/vzqJNIixm3pPGcP9yl N7zvlqKQCNHwqMy/5fMrF1d4yN+uvYgFCk7ZYTOmwagJAzY3npEedb/UczBlyXX7xQUd Tv+0s27ZZWRMpP0OLn2szEOCUgGv6XG3Klu8QPZLiYXF4vthstxoZwq/iBhx9nm5KwG5 5gYRpVuuNzFIM3lXpSKuLWzSYEn1CuDmXhxcn0VoCBf9xGs34Ua2H4ER/pmWs6H09kA0 HQO5CylDCXjdnLST8vDh0/n3VefppOnlOr6+4nYlrbHW+dXFuPDTgD0vEd1GGqzED0+0 /iNQ== X-Gm-Message-State: AOAM5328ua7IbJzpuURCHBkpyRVTz76mMa5B1iwDW4pDmJOIpnSnozIp SmVK4ULAcPZYrHFfH0ZuhW38Hx/JilP1IPE+DmY= X-Google-Smtp-Source: ABdhPJwvuCmIUUBy89F5Yn5RqOM2Ef1SMDOdy78s11hSZVn0jjE6LAXmU3WvvBhCP3tSl1Gm+sGYhZF0riIvjjLWRJQ= X-Received: by 2002:a17:902:9309:b029:db:c725:d19c with SMTP id bc9-20020a1709029309b02900dbc725d19cmr9782638plb.39.1608400970089; Sat, 19 Dec 2020 10:02:50 -0800 (PST) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Sat, 19 Dec 2020 12:02:49 -0600 From: Stefan Kangas In-Reply-To: <83o8jxrxxt.fsf@gnu.org> References: <83tuty4iyv.fsf@gnu.org> <83tutx3n83.fsf@gnu.org> <834klx2obm.fsf@gnu.org> <83k0ut0yby.fsf@gnu.org> <83o8jxrxxt.fsf@gnu.org> MIME-Version: 1.0 Date: Sat, 19 Dec 2020 12:02:49 -0600 Message-ID: Subject: Re: bug#44529: [PATCH] Convert apropos-internal from C to Lisp To: Eli Zaretskii Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.5 (/) X-Debbugs-Envelope-To: 44529 Cc: 44529@debbugs.gnu.org, monnier@iro.umontreal.ca X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.5 (/) tags 44529 fixed close 44529 28.1 thanks Eli Zaretskii writes: >> The attached patch moves it to subr.el instead, as requested. > > Thanks. No further comments within a month; pushed to master as commit 49ae715966. From unknown Mon Aug 18 11:09:28 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Sun, 17 Jan 2021 12:24:06 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator