unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
* Some racism in emacs!
@ 2003-06-01  6:05 Pascal Bourguignon
  2003-06-01  7:41 ` John Paul Wallington
  0 siblings, 1 reply; 6+ messages in thread
From: Pascal Bourguignon @ 2003-06-01  6:05 UTC (permalink / raw)



I'm wondering  why when I compile  a .el file,  the byte-compiler does
not issue any warning about my  use of functions from ring.el such as:
make-ring or ring-insert?


Well, actually what's  bothering me is these nasty,  racist messages I
get from the byte-compiler:

Warning: Function `gensym' from cl package called at runtime
Warning: Function `subseq' from cl package called at runtime
etc...


I can't see the difference between the functions defined in 
emacs/lisp/emacs-lisp/cl.el and those defined in
emacs/lisp/emacs-lisp/ring.el
Can you?



-- 
__Pascal_Bourguignon__                   http://www.informatimago.com/
----------------------------------------------------------------------
Do not adjust your mind, there is a fault in reality.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Some racism in emacs!
  2003-06-01  6:05 Some racism in emacs! Pascal Bourguignon
@ 2003-06-01  7:41 ` John Paul Wallington
  2003-06-02  6:42   ` Pascal Bourguignon
  0 siblings, 1 reply; 6+ messages in thread
From: John Paul Wallington @ 2003-06-01  7:41 UTC (permalink / raw)


Pascal Bourguignon <spam@thalassa.informatimago.com> wrote:

> Well, actually what's  bothering me is these nasty,  racist messages I
> get from the byte-compiler:
>
> Warning: Function `gensym' from cl package called at runtime
> Warning: Function `subseq' from cl package called at runtime
> etc...
>
>
> I can't see the difference between the functions defined in 
> emacs/lisp/emacs-lisp/cl.el and those defined in
> emacs/lisp/emacs-lisp/ring.el
> Can you?

The cl library, like Common Lisp, is big and hard to subset.

Amongst the Emacs Lisp Coding Conventions it is suggested:

   * Please don't require the `cl' package of Common Lisp extensions at
     run time.  Use of this package is optional, and it is not part of
     the standard Emacs namespace.  If your package loads `cl' at run
     time, that could cause name clashes for users who don't use that
     package.

     However, there is no problem with using the `cl' package at compile
     time, for the sake of macros.  You do that like this:

          (eval-when-compile (require 'cl))

Hm.  I think name clashes are largely a non-problem; a package author
would be insane to define cl functions/macros incompatibly, wouldn't
they?

Ways to ameliorate this situation include splitting cl into several
separate independent libraries, moving ultra-nifty bits into subr.el,
or defining compiler macros for the more popular functions.

If you just don't want to see the warnings then try frobbing
`byte-compile-warnings' (untested).

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Some racism in emacs!
  2003-06-01  7:41 ` John Paul Wallington
@ 2003-06-02  6:42   ` Pascal Bourguignon
  2003-06-02  9:46     ` John Paul Wallington
  0 siblings, 1 reply; 6+ messages in thread
From: Pascal Bourguignon @ 2003-06-02  6:42 UTC (permalink / raw)



John Paul Wallington <jpw@gnu.org> writes:
> The cl library, like Common Lisp, is big and hard to subset.

Who asked for a subset?
 
> Amongst the Emacs Lisp Coding Conventions it is suggested:
> 
>    * Please don't require the `cl' package of Common Lisp extensions at
>      run time.  Use of this package is optional, and it is not part of
>      the standard Emacs namespace.  If your package loads `cl' at run
>      time, that could cause name clashes for users who don't use that
>      package.
> 
>      However, there is no problem with using the `cl' package at compile
>      time, for the sake of macros.  You do that like this:
> 
>           (eval-when-compile (require 'cl))
> 
> Hm.  I think name clashes are largely a non-problem; a package author
> would be insane to define cl functions/macros incompatibly, wouldn't
> they?
> 
> Ways to ameliorate this situation include splitting cl into several
> separate independent libraries, moving ultra-nifty bits into subr.el,
> or defining compiler macros for the more popular functions.
> 
> If you just don't want to see the warnings then try frobbing
> `byte-compile-warnings' (untested).

This is entirely negating the point of Common-Lisp and the `cl' package.

I  don't use Microsoft-Word  because I  don't want  to be  locked into
their proprietary file format.

By the same token, as much as possible, I don't want to be locked into
emacs lisp specificisms.

Everytime  there is  an  emacs  function that  have  an equivalent  in
Common-Lisp, I'll use the Common-Lisp  version.  This gives me the big
bonus to be able to use most  of my lisp code programmed on emacs also
on any other lisp environment.

But I  guess that this gives the  same cold sweat to  Stallman than to
Gates,  to  see that  some  users  of his  programs  may  want to  use
concurent programs!   What if  suddently GNUS or  VM or Kiwi  could be
compiled and used with cmucl or clisp?  Horror!


I don't mind if features specific  to the emacs editor are hard linked
to it  (instead of, for example,  being programmed as  a nice portable
Common-Lisp package).  There may  have valid technical reasons for it,
or I could even  agree with their moral reasons for it.   But if I use
emacs for  prototyping lisp  code, for scripting,  or even  to program
some  personal interactive  tools, why  should they  and all  the lisp
libraries I write be locked to emacs lisp?



If emacs developers are worried by name clashes, what are they waiting
for implementing Common-Lisp packages?


-- 
__Pascal_Bourguignon__                   http://www.informatimago.com/
----------------------------------------------------------------------
Do not adjust your mind, there is a fault in reality.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Some racism in emacs!
  2003-06-02  6:42   ` Pascal Bourguignon
@ 2003-06-02  9:46     ` John Paul Wallington
  2003-06-02 13:08       ` Kai Großjohann
  0 siblings, 1 reply; 6+ messages in thread
From: John Paul Wallington @ 2003-06-02  9:46 UTC (permalink / raw)


Pascal Bourguignon <spam@thalassa.informatimago.com> wrote:

> John Paul Wallington <jpw@gnu.org> writes:
>> The cl library, like Common Lisp, is big and hard to subset.
>
> Who asked for a subset?

The coding conventions say not to make runtime use of cl.  IMHO, the
most likely to succeed way to nullify this convention is to split cl
into independent parts and for libraries to require what they need at
runtime.  But subsetting cl is almost as hard as subsetting Common
Lisp.

>> Amongst the Emacs Lisp Coding Conventions it is suggested:
>> 
>>    * Please don't require the `cl' package of Common Lisp extensions at
>>      run time.  Use of this package is optional, and it is not part of
>>      the standard Emacs namespace.  If your package loads `cl' at run
>>      time, that could cause name clashes for users who don't use that
>>      package.
>> 
>>      However, there is no problem with using the `cl' package at compile
>>      time, for the sake of macros.  You do that like this:
>> 
>>           (eval-when-compile (require 'cl))
>> 
>> Hm.  I think name clashes are largely a non-problem; a package author
>> would be insane to define cl functions/macros incompatibly, wouldn't
>> they?
>> 
>> Ways to ameliorate this situation include splitting cl into several
>> separate independent libraries, moving ultra-nifty bits into subr.el,
>> or defining compiler macros for the more popular functions.
>> 
>> If you just don't want to see the warnings then try frobbing
>> `byte-compile-warnings' (untested).
>
> This is entirely negating the point of Common-Lisp and the `cl' package.
>
> I  don't use Microsoft-Word  because I  don't want  to be  locked into
> their proprietary file format.
>
> By the same token, as much as possible, I don't want to be locked into
> emacs lisp specificisms.
>
> Everytime  there is  an  emacs  function that  have  an equivalent  in
> Common-Lisp, I'll use the Common-Lisp  version.  This gives me the big
> bonus to be able to use most  of my lisp code programmed on emacs also
> on any other lisp environment.

I see.  But cl doesn't magically make Emacs Lisp into Common Lisp.  I
guess you could write sizable code that does the same thing under
both, but would it particularly suit either?

> But I  guess that this gives the  same cold sweat to  Stallman than to
> Gates,  to  see that  some  users  of his  programs  may  want to  use
> concurent programs!   What if  suddently GNUS or  VM or Kiwi  could be
> compiled and used with cmucl or clisp?  Horror!
>
>
> I don't mind if features specific  to the emacs editor are hard linked
> to it  (instead of, for example,  being programmed as  a nice portable
> Common-Lisp package).  There may  have valid technical reasons for it,
> or I could even  agree with their moral reasons for it.   But if I use
> emacs for  prototyping lisp  code, for scripting,  or even  to program
> some  personal interactive  tools, why  should they  and all  the lisp
> libraries I write be locked to emacs lisp?

Because that's the way it is.  Emacs implements its own dialect.

I imagine an Emacs written in Common Lisp would probably be better off
using Common Lisp as its extension language.

> If emacs developers are worried by name clashes, what are they waiting
> for implementing Common-Lisp packages?

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Some racism in emacs!
  2003-06-02  9:46     ` John Paul Wallington
@ 2003-06-02 13:08       ` Kai Großjohann
  2003-06-02 16:00         ` David Kastrup
  0 siblings, 1 reply; 6+ messages in thread
From: Kai Großjohann @ 2003-06-02 13:08 UTC (permalink / raw)


John Paul Wallington <jpw@gnu.org> writes:

> Because that's the way it is.  Emacs implements its own dialect.

I wish Emacs Lisp was based on CL.

*dream*

-- 
This line is not blank.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Some racism in emacs!
  2003-06-02 13:08       ` Kai Großjohann
@ 2003-06-02 16:00         ` David Kastrup
  0 siblings, 0 replies; 6+ messages in thread
From: David Kastrup @ 2003-06-02 16:00 UTC (permalink / raw)


kai.grossjohann@gmx.net (Kai Großjohann) writes:

> John Paul Wallington <jpw@gnu.org> writes:
> 
> > Because that's the way it is.  Emacs implements its own dialect.
> 
> I wish Emacs Lisp was based on CL.
> 
> *dream*

<URL:http://www.cliki.net/CL-Emacs>

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2003-06-02 16:00 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-06-01  6:05 Some racism in emacs! Pascal Bourguignon
2003-06-01  7:41 ` John Paul Wallington
2003-06-02  6:42   ` Pascal Bourguignon
2003-06-02  9:46     ` John Paul Wallington
2003-06-02 13:08       ` Kai Großjohann
2003-06-02 16:00         ` David Kastrup

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).