chicken-janitors
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-janitors] several bugs.


From: Elf
Subject: Re: [Chicken-janitors] several bugs.
Date: Wed, 24 Oct 2007 23:46:35 -0700 (PDT)


it doesnt, though.  error in boyer.scm is:

Error: call of non-procedure: #<unbound value>

        Call history:

        <eval>          [add-lemma] (cadr term)
        <eval>          [add-lemma] (put! (car (cadr term)) (quote lemmas) 
(cons term (or (get (car (cadr term)) (quote lemmas)) (quote...
        <eval>          [add-lemma] (car (cadr term))
        <eval>          [add-lemma] (cadr term)
        <eval>          [add-lemma] (cons term (or (get (car (cadr term)) 
(quote lemmas)) (quote ())))
        <eval>          [add-lemma] (get (car (cadr term)) (quote lemmas))
        <eval>          [add-lemma] (car (cadr term))
        <eval>          [add-lemma] (cadr term) <--

whereas the cadr is (compile form) and the car cadr is therefore compile, which
is a valid symbol.   when putting (get 'somesym 'someprop) into the interpreter,
we get:
#;1> (get 'somesym 'someprop)
Error: call of non-procedure: #<unbound value>

        Call history:

        <syntax>                (get (quote somesym) (quote someprop))
        <syntax>                (quote somesym)
        <syntax>                (quote someprop)
        <eval>          (get (quote somesym) (quote someprop))  <--

same thing.  ive traced it to the aforementioned line in library.scm.  where
is the default value of '() being set for symbols?

-elf

On Thu, 25 Oct 2007, felix winkelmann wrote:

On 10/25/07, Elf <address@hidden> wrote:

the problem with proplists is that a condition is signaled if theres no put!
before a get.  at line 4619 in library.scm
    (let loop ((plist (##sys#slot sym 2)))
which doesnt consider the case of no slot existing yet, i think.  i need to look
into it a bit more because proplists are new and im not familiar with how
symbols have changed recently.


The default value for slot #2 of a symbol is '(). This should work.


cheers,
felix





reply via email to

[Prev in Thread] Current Thread [Next in Thread]