From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: David Kastrup Newsgroups: gmane.emacs.devel Subject: Re: In support of guile-emacs Date: Tue, 20 Oct 2015 08:00:53 +0200 Message-ID: <87wpuigju2.fsf@fencepost.gnu.org> References: <87fv17kgno.fsf@dustycloud.org> <20151019102414.GA2438@acm.fritz.box> <5624FADF.9070908@dancol.org> <20151019143527.GG2438@acm.fritz.box> <87eggqn6eo.fsf@T420.taylan> <20151019171909.GH2438@acm.fritz.box> <87wpuilml3.fsf@T420.taylan> <20151019201224.GJ2438@acm.fritz.box> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1445326778 15598 80.91.229.3 (20 Oct 2015 07:39:38 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 20 Oct 2015 07:39:38 +0000 (UTC) Cc: Xue Fuqiao , bruce.connor.am@gmail.com, emacs-devel , Christopher Allan Webber , Taylan Ulrich =?utf-8?Q?Bay=C4=B1rl=C4=B1=2FKammer?= , Daniel Colascione To: Alan Mackenzie Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Oct 20 09:39:34 2015 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1ZoRW6-0003RG-Mz for ged-emacs-devel@m.gmane.org; Tue, 20 Oct 2015 09:39:30 +0200 Original-Received: from localhost ([::1]:44318 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZoRW6-0005zz-1r for ged-emacs-devel@m.gmane.org; Tue, 20 Oct 2015 03:39:30 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:57706) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZoRVt-0005pS-EO for emacs-devel@gnu.org; Tue, 20 Oct 2015 03:39:21 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZoRVr-0004aW-PO for emacs-devel@gnu.org; Tue, 20 Oct 2015 03:39:17 -0400 Original-Received: from fencepost.gnu.org ([2001:4830:134:3::e]:58994) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZoRVa-0004Uj-9C; Tue, 20 Oct 2015 03:38:58 -0400 Original-Received: from localhost ([127.0.0.1]:44577 helo=lola) by fencepost.gnu.org with esmtp (Exim 4.82) (envelope-from ) id 1ZoRVV-00052V-Tz; Tue, 20 Oct 2015 03:38:55 -0400 Original-Received: by lola (Postfix, from userid 1000) id EDAE0DF371; Tue, 20 Oct 2015 08:00:53 +0200 (CEST) In-Reply-To: <20151019201224.GJ2438@acm.fritz.box> (Alan Mackenzie's message of "Mon, 19 Oct 2015 20:12:24 +0000") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::e X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:192157 Archived-At: Alan Mackenzie writes: > Hello, Taylan. > > On Mon, Oct 19, 2015 at 08:50:16PM +0200, Taylan Ulrich Bay=C4=B1rl=C4=B1= /Kammer wrote: >> At the same time though, I'm really very hopeful about Guile's future >> wrt. performance. A very great hacker is working on it. > > That's encouraging. On the other hand, that work has a lousy bus factor. Here is the first page of recent commits on GUILE's master branch: Mark H Weaver Fix typo in CPS conversion. Andy Wingo Minor CPS documentation cleanups Andy Wingo Update CPS language documentation Andy Wingo Remove unused (language tree-il inline) module. Mark H Weaver Allow decoding of UTF-8 containing U+FFFD, the replacement ch= aracter. Andy Wingo Add closure effects Andy Wingo Better codegen for $values terms that don't shuffle Andy Wingo Loop peeling Andy Wingo solve-flow-equations tweak Andy Wingo Simplify rotate-loops.scm Andy Wingo Loop inversion with multiple exits Andy Wingo Rotate comparisons down to loop back-edges Andy Wingo Eliminate trampoline gotos when possible in compile-bytecode Andy Wingo Small expression-effects tweak Andy Wingo Loop-invariant code motion Andy Wingo Move solve-flow-equations to utils Andy Wingo Factor out compute-effects/elide-type-checks from dce.scm Andy Wingo Add missing files Andy Wingo Rename CPS2 to CPS Andy Wingo Remove CPS1 language Andy Wingo Compile CPS2 directly to bytecode Andy Wingo Slot allocation and bytecode compilation from CPS2. Andy Wingo Fix CPS2 compute-successors Andy Wingo intset-intersect bugfix Andy Wingo Fix bad return shuffles for multiply-used $kreceive conts Andy Wingo Fix error printing some wrong-num-args backtraces Andy Wingo More slot-allocation simplification Andy Wingo CPS1 slot-allocation simplification Andy Wingo Utils refactors Andy Wingo Add intset-prev and intset-fold-right Andy Wingo Reify primitives in CPS2 Andy Wingo Fix type/range inference for mul Andy Wingo Remove CPS optimization passes and closure conversion Andy Wingo Optimize first-order CPS Andy Wingo Beta reduction over first-order CPS Andy Wingo DCE works on first-order CPS Andy Wingo compute-reachable-functions refactor Andy Wingo Prepare DCE pass for first-order CPS2 Andy Wingo Enable CPS2 closure conversion Andy Wingo CPS2 closure conversion bugfixes Andy Wingo closure-conversion docstring tweak Andy Wingo Wire up new closure conversion pass Andy Wingo Add CPS2 closure conversion module Andy Wingo Verify pass works on first-order CPS Andy Wingo Beginnings of first-order CPS optimization Andy Wingo Tweak intset printing Andy Wingo CPS2 renumber works with first-order CPS Andy Wingo Fix intset-subtract to reliably produce empty-intset Andy Wingo intset-union fast paths Andy Wingo Reorganizing of intset/intmap helper functions Andy Wingo Add split-rec pass Andy Wingo Renumber before contifying to eliminate stale conts Emacs's master branch looks a bit more diverse in authorship and less back-and-forth in content. Even if I only look at lisp/emacs-lisp/byte-compile.el (since it would be unfair to take all of Emacs, a diverse application pool, as comparison to a language): Paul Eggert Fix a few problems with directed quotes Paul Eggert Backslash cleanup in Elisp source files Paul Eggert Revert some stray curved quotes I missed earlier Paul Eggert Go back to grave quoting in source-code docstrings etc. Stefan Monnier Fix disassembly of non-compiled lexical functions (bug#21377) Paul Eggert Treat =E2=80=9Cinstead=E2=80=9D strings as docstrings Paul Eggert Prefer directed to neutral quotes Paul Eggert More-conservative =E2=80=98format=E2=80=99 quote restyling Paul Eggert text-quoting-style in emacs-lisp diagnostics Glenn Morris Address a compilation warning. Glenn Morris Address some compilation warnings. Paul Eggert Don't quote nil and t in doc strings Glenn Morris Minor declare-function improvement Artur Malabarba * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteracti= ve compilations" Artur Malabarba * lisp/emacs-lisp/bytecomp.el: Use `inhibit-message' Artur Malabarba * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compi= lations Artur Malabarba Speed up byte-compilation and autoload generation by avoidi= ng mode-hooks Stefan Monnier * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Keep type=3Dnil= by default. Stefan Monnier Add (:documentation
) for dynamically-generated docstr= ings Paul Eggert Don't downcase system diagnostics' first letters Stefan Monnier lisp/emacs-lisp/eieio*.el: Rewrite our generics on top of cl= -generic Paul Eggert Less 'make' chatter in batch mode Paul Eggert Update copyright year to 2015 Paul Eggert Spelling fixes Stefan Monnier * lisp: Prefer inlinable functions to macros. Stefan Monnier Fix bootstrap failure after last change to eval-and-compile. Glenn Morris * bytecomp.el (byte-compile-report-error): Allow the argument = to be a string. Due to the vague doc, it was already being used this way. Stefan Monnier * lisp/emacs-lisp/bytecomp.el: Add a warning and remove a sp= urious warning. (byte-compile-initial-macro-environment): Don't compile bef= ore eval in `eval-and-compile'. (byte-compile-arglist-warn): Add check for = defining macros after their first use. Check call use even if the function= is fboundp. Stefan Monnier * lisp/emacs-lisp/bytecomp.el (byte-compile--use-old-handler= s): Change default. Stefan Monnier * lisp/emacs-lisp/bytecomp.el: Require cl-extra. * lisp/emac= s-lisp/cl-extra.el: Add missing provide. Stefan Monnier * lisp/select.el: Use lexical-binding. (gui-set-selection): = Provide an implementation for non-GUI frames. * lisp/term/x-win.el: Use lex= ical-binding. (x-clipboard-yank): Fix up missed renamings. * lisp/term/w32-= win.el (libgif-version, libjpeg-version): Silence compiler. (w32--set-selec= tion): Fix up var names. * lisp/term/pc-win.el: Use lexical-binding. (w16-s= election-exists-p): Silence compiler warning. (w16-selection-owner-p): Fix = up missed renamings. Stefan Monnier * lisp/emacs-lisp/bytecomp.el (byte-compile-and-folded): Opt= imize case where all args are copyable. (=3D, <, >, <=3D, >=3D): Re-enable = the optimization. Stefan Monnier Restore temporarily reverted bytecomp change Glenn Morris Temporarily revert previous bytecomp change Stefan Monnier * lisp/emacs-lisp/bytecomp.el (=3D, <, >, <=3D, >=3D): Don't= optimize multi-arg case. Stefan Monnier * lisp/subr.el (track-mouse): New macro. * lisp/emacs-lisp/c= conv.el (cconv-convert, cconv-analyse-form): Remove track-mouse case. * lis= p/emacs-lisp/bytecomp.el (byte-compile-track-mouse): Remove. * src/keyboard= .c (track-mouse): Rename to internal--track-mouse. Make it into a function = and change arg to be a function. Stefan Monnier * lisp/emacs-lisp/bytecomp.el (byte-compile-lambda): Don't a= dd fundoc usage for functions with no arguments. Daniel Colascione Minor bytecomp.el fixes Daniel Colascione Correctly treat progn contents as toplevel forms when byt= e compiling Glenn Morris Move some help functions from help-fns.el to help.el, which is= preloaded. Glenn Morris Replace "Maintainer: FSF" with the emacs-devel mailing address Glenn Morris "Use instead" obsolescence messages should end with "." Juanma Barranquero Silence byte-compiler warning. Daniel Colascione Use whole file-name-history'. Stefan Monnier * lisp/abbrev.el (define-abbrev): Beware new meaning of fbou= ndp. * lisp/emacs-lisp/elint.el (elint-find-builtins): * lisp/emacs-lisp/el= doc.el (eldoc-symbol-function): * lisp/emacs-lisp/bytecomp.el (byte-compile= -callargs-warn) (byte-compile-file-form-defmumble, byte-compile, byte-compi= le-form): * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand): * lis= p/apropos.el (apropos-safe-documentation): * lisp/subr.el (symbol-file): Re= move redundant fboundp. * lisp/progmodes/idlw-shell.el (idlwave-shell-comin= t-filter): Use defalias. Paul Eggert Update copyright year to 2014 by running admin/update-copyright. --=20 David Kastrup