unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "paul r" <paul.r.ml@gmail.com>
To: "Miles Bader" <miles@gnu.org>
Cc: emacs-devel@gnu.org, Stefan Monnier <monnier@iro.umontreal.ca>,
	rms@gnu.org
Subject: Re: lexbind
Date: Tue, 4 Mar 2008 17:29:03 +0100	[thread overview]
Message-ID: <e30f0f320803040829u71b0565ocecbb1422a219f08@mail.gmail.com> (raw)
In-Reply-To: <87ir02fqlw.fsf@catnip.gol.com>

>
> Well there's the occasional desire to have other files use your
>  functions...
>
>  -miles
>
>
for sure you have never seen one of *my* functions, or you would not
believe any other file want to refer to it !
more seriously, there is this obvious case showing globaly bound
functions are required.
 On the other hand, some others functions will never be use out of
lexical scope, so the developper has to choose between :
 - manipulate symbols bound to lambda definitions as proposed above,
which is a working solution but far less pleasant to manipulate than
normaly "defun-ed" functions
 - do a regular (defun ...), which ends up being noisy.

In the current CVS, I can count more than 7600 fonctions in the "M-x
describe-function" completion buffer. A quick look at them make me
think a lot of them are not designed to work out of lexical scope, or
at least they are designed by a mode, for its own use only, and could
therefore be in the lexical scope.

In the spirit of the (lexical-let ...), a possible improvement could
be to have a (lexical-defun ...), don't you think ? It would not break
anything and would make at least one person happy, maybe more. Just an
idea, be sure I appreciate you know this topic several orders of
magnitude better than I will ever do.

-- paul




  reply	other threads:[~2008-03-04 16:29 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-03-02 17:25 lexbind Richard Stallman
2008-03-02 19:27 ` lexbind Stefan Monnier
2008-03-03 18:26   ` lexbind Richard Stallman
2008-03-03 21:43     ` lexbind Stefan Monnier
2008-03-03 22:07       ` lexbind David Kastrup
2008-03-03 22:43         ` lexbind Stefan Monnier
2008-03-03 23:09           ` lexbind David Kastrup
2008-03-03 23:31             ` lexbind Miles Bader
2008-03-03 22:18       ` lexbind paul r
2008-03-03 22:45         ` lexbind Stefan Monnier
2008-03-04 10:12           ` lexbind paul r
2008-03-04 15:36             ` lexbind Miles Bader
2008-03-04 16:29               ` paul r [this message]
2008-03-04 23:04                 ` lexbind Stephen J. Turnbull
2008-03-05  2:38                   ` lexbind Miles Bader
2008-03-05  5:08                     ` lexbind Dan Nicolaescu
2008-03-05  5:58                     ` lexbind Stephen J. Turnbull
2008-03-14 17:03                       ` lexbind paul r
2008-03-14 19:00                         ` lexbind Stefan Monnier
2008-03-14 22:10                         ` lexbind Stephen J. Turnbull
2008-03-03 22:49         ` lexbind David De La Harpe Golden
2008-03-04 23:03       ` lexbind Richard Stallman
2008-03-04 23:18         ` lexbind Miles Bader
2008-03-05 21:33           ` lexbind Richard Stallman
  -- strict thread matches above, loose matches on Subject: below --
2011-02-17 22:10 lexbind Stefan Monnier
2011-02-18  3:54 ` lexbind Daniel Colascione
2011-02-18  3:57   ` lexbind Daniel Colascione
2011-02-18  4:48     ` lexbind Stefan Monnier
2011-02-20 18:39 ` lexbind Tom Tromey
2011-02-21 22:01   ` lexbind Stefan Monnier
2011-03-10  5:34 Emacs 23.3 released Chong Yidong
2011-03-10 16:07 ` Stefan Monnier
2011-03-10 19:21   ` Thierry Volpiatto
2011-03-11  4:20     ` Stefan Monnier
2011-03-11  7:14       ` Thierry Volpiatto
2011-03-12  3:35         ` Stefan Monnier
2011-03-12 12:23           ` Juanma Barranquero
2011-03-14 14:10             ` Stefan Monnier
2011-03-14 14:52               ` Juanma Barranquero
2011-03-14 15:51                 ` Lexbind (was: Emacs 23.3 released) Stefan Monnier
2011-03-17  1:59                   ` Juanma Barranquero
2011-03-17 20:01                     ` Lexbind Stefan Monnier
2011-03-17 22:07                       ` Lexbind Wojciech Meyer
2011-03-17 23:29                       ` Lexbind Juanma Barranquero
2011-03-18  7:39                         ` Lexbind joakim

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e30f0f320803040829u71b0565ocecbb1422a219f08@mail.gmail.com \
    --to=paul.r.ml@gmail.com \
    --cc=emacs-devel@gnu.org \
    --cc=miles@gnu.org \
    --cc=monnier@iro.umontreal.ca \
    --cc=rms@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).