<br><br><div><span class="gmail_quote">On 7/19/06, <b class="gmail_sendername">Shaun Kruger</b> <<a href="mailto:shaun.kruger@gmail.com">shaun.kruger@gmail.com</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
> One possibility is that the compiler is "seeing" your use of ID in the<br>> MM-APPS package before it sees your defpackage form.<br><br>It turns out I read about this in practical common lisp in the section
<br>about packages. It looks like I probably tried to use the symbol<br>poorly and thus it got interned without actually having a function<br>behind it. It's in the last 2 pages of chapter 21.<br><br>I closed LispWorks and opened it again (I know there's another way,
<br>but it had been open for a couple of weeks anyway). It works now.</blockquote><div><br>Awesome. Some more info for next time:<br><br>(unintern "ID" "MM-APPS") should do the trick. Also, at the time you evaluated the defpackage form, there might have been an inscrutable warning about mm-apps now having two symbols of the same name in sight. (Same name "ID", but different symbols and only celtk:id had the accessor function.) And there may have been a restart which, had you selected it, would have uninterned the accidental one. I went a long time just bouncing my Lisp as you did because the wording on that restart was so bad that it sounded like it would wipe my hard drive or something, but that is the way to go. The sick thing is that selecting that restart just gets rid of the accidental symbol; you /still/ have to recompile any function that (a) used that symbol and (b) compiled against the package when the accidental symbol was there. Worse, bouncing will not help if you have a "current" fasl that got built against the accidental symbol unless you are in the habit of doing a full build all the time. So you may end up even more puzzled/frustrated. Just hang in there and after this happens a few more times I think you will have learned packages the hard way and be able to work these things out pretty quickly when they come up.
<br><br>kenny<br><br></div><br></div><br>