[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Save `nil' from the mutant void, preserve the truth of falsehood, pr
From: |
MON KEY |
Subject: |
Re: Save `nil' from the mutant void, preserve the truth of falsehood, prevent the falsehood of truth |
Date: |
Tue, 14 Sep 2010 01:11:09 -0400 |
On Mon, Sep 13, 2010 at 5:52 AM, Stefan Monnier
<address@hidden> wrote:
>> `#1=', and related reader syntax constructs aren't bad.
>
> In source code, they are.
I'll assume you are speaking only of #=<N> syntax.
> In source code, you have other ways to express sharing, such as `let', which
> are much preferred.
No doubt this is true for "top-level" shared/circular structure.
But what of lisp source code that evaluates to the non-preferred format?
I doubt the distinction is always quite so clear (or detectable).
>
>> Indeed, they are quite prevalent in byte-code files and the language
>> would be hamstrung without them.
>
> Which language?
The one comprised of s-expressions Printed for Read to Evaluate ad nauseam.
> Note that AFAIC .el and .elc files use 2 different languages.
>
>
Hrmmm.
Is there a know non-lisp interpreter for the non-lisp one?
Is it distributed with Emacs?
What is its license?
Where can I find its source code?
>> No, the argument to `unintern' can be a symbol or string.
>
> Who cares, it's still not a boolean.
So would you agree then that where `fboundp' shouldn't take a boolean neither
should `unitern'?
>
>>> - calling unintern without an obarray arg is a bad idea.
>> Yeah,
>
This elision conveniently ignores my caveats w/re the current use value of
Emacs "other" obarrays...
>
> So: why do you do it?
>
Why do i do what, unintern? To unintern a symbol of course :P
More specifically, redefining button-types and faces are good uses.
>> Yeah, but again there is the weird corner case of interning the 0
>> length string.
>
> What's weird about it?
Whats not?
(identity (intern ""))
;=>
(put (identity (intern-soft ""))
(identity (intern-soft ""))
(identity (intern-soft "")))
;=>
(get (identity (intern-soft ""))
(identity (intern-soft "")))
;=>
(setq 0len (symbol-plist (identity (intern-soft ""))))
;=> ( )
(symbol-value '0len)
=> ( )
(car (symbol-value '0len))
=>
More specifically, what is the utility?
>
> Stefan
>
On Mon, Sep 13, 2010 at 5:52 AM, Stefan Monnier
<address@hidden> wrote:
>> `#1=', and related reader syntax constructs aren't bad.
>
> In source code, they are. In source code, you have other ways to
> express sharing, such as `let', which are much preferred.
>
>> Indeed, they are quite prevalent in byte-code files and the language
>> would be hamstrung without them.
>
> Which language? Note that AFAIC .el and .elc files use
> 2 different languages.
>
>>> - unintern takes a symbol as argument, not a boolean, so it should
>>> not be called with the return value of (fboundp ...)
>> No, the argument to `unintern' can be a symbol or string.
>
> Who cares, it's still not a boolean.
>
>>> - calling unintern without an obarray arg is a bad idea.
>> Yeah,
>
> So: why do you do it?
>
>>> Maybe we should make the second argument mandatory.
>> That would be nice.
>
> Indeed.
>
>>> since `intern' only takes a string rather than a symbol.
>> Yeah, but again there is the weird corner case of interning the 0
>> length string.
>
> What's weird about it?
>
>
> Stefan
>
- Save `nil' from the mutant void, preserve the truth of falsehood, prevent the falsehood of truth, MON KEY, 2010/09/11
- Re: Save `nil' from the mutant void, preserve the truth of falsehood, prevent the falsehood of truth, Lars Magne Ingebrigtsen, 2010/09/11
- Re: Save `nil' from the mutant void, preserve the truth of falsehood, prevent the falsehood of truth, Andy Wingo, 2010/09/12
- Re: Save `nil' from the mutant void, preserve the truth of falsehood, prevent the falsehood of truth, Stefan Monnier, 2010/09/12
- Re: Save `nil' from the mutant void, preserve the truth of falsehood, prevent the falsehood of truth, MON KEY, 2010/09/12
- Re: Save `nil' from the mutant void, preserve the truth of falsehood, prevent the falsehood of truth, Stefan Monnier, 2010/09/13
- Re: Save `nil' from the mutant void, preserve the truth of falsehood, prevent the falsehood of truth,
MON KEY <=
- Re: Save `nil' from the mutant void, preserve the truth of falsehood, prevent the falsehood of truth, Stefan Monnier, 2010/09/14
- Message not available
- Re: Save `nil' from the mutant void, preserve the truth of falsehood, prevent the falsehood of truth, MON KEY, 2010/09/21