unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* t and nil in pure memory?
@ 2009-11-11 20:23 Dan Nicolaescu
  2009-11-11 22:56 ` Stefan Monnier
                   ` (2 more replies)
  0 siblings, 3 replies; 44+ messages in thread
From: Dan Nicolaescu @ 2009-11-11 20:23 UTC (permalink / raw)
  To: emacs-devel


The last GC before dumping generates 200K calls to mark_object, of those
20K have Qt or Qnil as an argument.

Would it make sense to put Qt and Qnil in pure memory?

We don't have any function that can create pure symbols.

Moving Qt and Qnil in pure memory would break things like:

(put t 'foo 'bar)

but maybe this works by accident rather than design.

How about other things that have SYMBOL_CONSTANT_P() set to 1?  Can they
go to pure memory?

More generally it would be very good to be able to put symbols in pure
memory, about 1/3 of the mark_object calls are for symbols, and it does
not seem that it's too useful to GC `car', `cdr', etc.  But it does not
seem to be too easy to do :-(




^ permalink raw reply	[flat|nested] 44+ messages in thread
* Re: t and nil in pure memory?
@ 2009-11-20  7:28 A. Soare
  2009-11-20  8:09 ` David Kastrup
  0 siblings, 1 reply; 44+ messages in thread
From: A. Soare @ 2009-11-20  7:28 UTC (permalink / raw)
  To: emacs-devel

>    7. Re: t and nil in pure memory? (Richard Stallman)
> 
> ------------------------------
> 
> Message: 7
> Date: Thu, 19 Nov 2009 23:12:55 -0500
> From: Richard Stallman <rms@gnu.org>
> Subject: Re: t and nil in pure memory?
> To: Stefan Monnier <monnier@IRO.UMontreal.CA>
> Cc: dak@gnu.org, emacs-devel@gnu.org
> Message-ID: <E1NBKrf-0005lW-OB@fencepost.gnu.org>
> Content-Type: text/plain; charset=ISO-8859-15
> 
>     As maintainer I care about maintainability of the code.  I will reject
>     such a change.
> 
> 2 lines whose meaning is totally obvious -- not much work to maintain.
> This looks like stubbornness to me.  I have no reason to be stubborn
> about it, so I will move on.
> 
> 

I did run

grep -riI "(put[[:blank:]\n]*t[^a-z]" *   and
grep -riI "(put[[:blank:]\n]*nil" *

in ./lisp directory, and I did find what I expected: nothing.

Could somebody give me an example in which adding properties to `t' and `nil' may be useful?





____________________________________________________

Gagnez un séjour au Maroc en découvrant les sketchs désopilants des ReVoila sur http://www.lesrevoila.fr/







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

end of thread, other threads:[~2009-11-24 16:28 UTC | newest]

Thread overview: 44+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-11-11 20:23 t and nil in pure memory? Dan Nicolaescu
2009-11-11 22:56 ` Stefan Monnier
2009-11-12  8:21   ` Tobias C. Rittweiler
2009-11-12 15:22     ` Stefan Monnier
2009-11-13  5:24       ` Dan Nicolaescu
2009-11-13 14:39         ` Stefan Monnier
2009-11-14 11:23           ` Richard Stallman
2009-11-15 20:25           ` David Kastrup
2009-11-16  1:26             ` Stefan Monnier
2009-11-16  8:24               ` David Kastrup
2009-11-17  7:57                 ` Richard Stallman
2009-11-17 13:16                   ` Stefan Monnier
2009-11-17 13:55                     ` David Kastrup
2009-11-18 12:11                     ` Richard Stallman
2009-11-18 15:52                       ` Stefan Monnier
2009-11-18 17:53                         ` Daniel Colascione
2009-11-18 18:19                           ` Stefan Monnier
2009-11-19 16:23                         ` Richard Stallman
2009-11-19 20:08                           ` Stefan Monnier
2009-11-20  4:12                             ` Richard Stallman
2009-11-20  5:47                               ` Chong Yidong
2009-11-22  6:48                                 ` Sam Steingold
2009-11-22  8:14                                   ` David Kastrup
2009-11-19 21:05                           ` Dan Nicolaescu
2009-11-15 21:08           ` Dan Nicolaescu
2009-11-16  1:34             ` Stefan Monnier
2009-11-18 18:53               ` Ken Raeburn
2009-11-18 19:03                 ` Daniel Colascione
2009-11-18 19:18                   ` Tom Tromey
2009-11-18 19:13                 ` Tom Tromey
2009-11-23  3:05                   ` Ken Raeburn
2009-11-23  5:31                     ` Stephen J. Turnbull
2009-11-24 16:03                       ` Ken Raeburn
2009-11-24 16:28                         ` Stefan Monnier
2009-11-19  1:01                 ` Stefan Monnier
2009-11-12  4:06 ` Eli Zaretskii
2009-11-13  4:55   ` Richard Stallman
2009-11-13  8:37     ` Eli Zaretskii
2009-11-14 11:23       ` Richard Stallman
2009-11-14 11:46         ` Eli Zaretskii
2009-11-15 22:38           ` Richard Stallman
2009-11-13  4:56 ` Richard Stallman
  -- strict thread matches above, loose matches on Subject: below --
2009-11-20  7:28 A. Soare
2009-11-20  8:09 ` David Kastrup

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