Talk About Network

Google


Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Programming > Lisp > Re: delete comm...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 4 of 64 Topic 12469 of 13579
Post > Topic >>

Re: delete command weirdness

by Ken Tilton <kennytilton@[EMAIL PROTECTED] > May 12, 2008 at 11:43 PM

Nathaniel Calloway wrote:
> Anyone have an explanation for the inability of the delete command to
> delete the car from a list (at least in clisp)? I guess this falls
> under the category of "never expect destructive list functions to act
> how you expect."
> 
> 
> CL-USER> (defvar testing)
> TESTING
> CL-USER> (setq testing '(a b c d))
> (A B C D)
> CL-USER> (delete 'a testing)
> (B C D)

The (B C D) you see above is the value returned by delete. Obvious, 
perhaps, but I am just warming up.

> CL-USER> testing
> (A B C D)

If you are familiar at all with programming (I do not know how 
experienced you are) you will realize delete does not see the /variable/ 
testing, the caller pulls a value out of that variable and p***** it to 
delete. ie, delete sees (a b c d), not "testing".

All delete can do is dutifully return a list without A, and whaddaya 
know, it can do just by returning the CDR of the list received (since A 
appears only in the car of the first cons).


> CL-USER> (delete 'b testing)
> (A C D)

Now delete is forced to do some work, and makes the cdr of the first 
cons the cdr of the second cons, effectively discarding the second cons 
from the structure received.

Another way for you to understand this is to try to write a destructive 
version of my-delete that does behave they way you expected. Methinks 
the light will go on before you write a line of code.

kzo

-- 
http://smuglispweeny.blogspot.com/
http://www.theoryyalgebra.com/
ECLM rant: 
http://video.google.com/videoplay?docid=-1331906677993764413&hl=en
ECLM talk: 
http://video.google.com/videoplay?docid=-9173722505157942928&q=&hl=en
 




 64 Posts in Topic:
delete command weirdness
Nathaniel Calloway <nt  2008-05-12 22:06:22 
Re: delete command weirdness
christopher.jay.jones@[EM  2008-05-12 20:18:16 
Re: delete command weirdness
vanekl <vanek@[EMAIL P  2008-05-12 20:30:24 
Re: delete command weirdness
Ken Tilton <kennytilto  2008-05-12 23:43:31 
Re: delete command weirdness
Nathaniel Calloway <nt  2008-05-13 01:18:20 
Re: delete command weirdness
Barry Margolin <barmar  2008-05-13 01:37:14 
Re: delete command weirdness
Barry Margolin <barmar  2008-05-13 01:42:59 
Re: delete command weirdness
Nathaniel Calloway <nt  2008-05-13 01:57:29 
Re: delete command weirdness
Peter Hildebrandt <pet  2008-05-13 09:51:03 
Re: delete command weirdness
usenet2.3.CalRobert@[EMAI  2008-05-13 20:59:47 
Re: delete command weirdness
usenet2.3.CalRobert@[EMAI  2008-05-13 19:06:55 
Re: delete command weirdness
Nathaniel Calloway <nt  2008-05-13 01:29:49 
Re: delete command weirdness
pjb@[EMAIL PROTECTED] (P  2008-05-13 15:50:36 
Re: delete command weirdness
Paul Donnelly <paul-do  2008-05-13 01:49:29 
Re: delete command weirdness
Ken Tilton <kennytilto  2008-05-13 09:50:31 
Re: delete command weirdness
Nathaniel Calloway <nt  2008-05-13 12:01:12 
Re: delete command weirdness
Rainer Joswig <joswig@  2008-05-13 18:22:44 
Re: delete command weirdness
Peter Hildebrandt <pet  2008-05-13 18:28:33 
Re: delete command weirdness
Ken Tilton <kennytilto  2008-05-13 13:35:10 
Re: delete command weirdness
Nathaniel Calloway <nt  2008-05-13 13:58:57 
Re: delete command weirdness
pjb@[EMAIL PROTECTED] (P  2008-05-14 12:21:22 
Re: delete command weirdness
Ken Tilton <kennytilto  2008-05-13 12:32:23 
Re: delete command weirdness
Geoffrey Summerhayes <  2008-05-13 01:06:51 
Re: delete command weirdness
Tomas Zellerin <zeller  2008-05-13 07:35:01 
Re: delete command weirdness
Peter Hildebrandt <pet  2008-05-13 17:58:20 
Re: delete command weirdness
David Crawford <crawfo  2008-05-13 09:16:36 
Re: delete command weirdness
kodifik@[EMAIL PROTECTED]  2008-05-13 09:53:06 
Re: delete command weirdness
Rainer Joswig <joswig@  2008-05-13 21:09:39 
Re: delete command weirdness
Kent M Pitman <pitman@  2008-05-13 15:45:57 
Re: delete command weirdness
Matthias Benkard <mulk  2008-05-13 10:38:56 
Re: delete command weirdness
Matthias Benkard <mulk  2008-05-13 10:42:29 
Re: delete command weirdness
Matthias Benkard <mulk  2008-05-13 11:14:46 
Re: delete command weirdness
Barry Margolin <barmar  2008-05-14 00:06:12 
Re: delete command weirdness
danb <sogwaldan@[EMAIL  2008-05-13 13:51:59 
Re: delete command weirdness
Mark Wooding <mdw@[EMA  2008-05-14 11:50:12 
Re: delete command weirdness
pjb@[EMAIL PROTECTED] (P  2008-05-14 14:27:46 
Re: delete command weirdness
Barry Margolin <barmar  2008-05-14 17:01:36 
Re: delete command weirdness
pjb@[EMAIL PROTECTED] (P  2008-05-15 12:16:09 
Re: delete command weirdness
tar@[EMAIL PROTECTED] (T  2008-05-14 14:23:02 
Re: delete command weirdness
Don Geddis <don@[EMAIL  2008-05-14 10:21:20 
Re: delete command weirdness
pjb@[EMAIL PROTECTED] (P  2008-05-15 12:28:05 
Re: delete command weirdness
Kent M Pitman <pitman@  2008-05-15 19:18:21 
Re: delete command weirdness
pjb@[EMAIL PROTECTED] (P  2008-05-16 09:45:07 
Re: delete command weirdness
tar@[EMAIL PROTECTED] (T  2008-05-16 09:43:25 
Re: delete command weirdness
tar@[EMAIL PROTECTED] (T  2008-05-15 09:14:35 
Re: delete command weirdness
Kent M Pitman <pitman@  2008-05-15 19:20:58 
Re: delete command weirdness
Don Geddis <don@[EMAIL  2008-05-15 13:37:16 
Re: delete command weirdness
Lars Brinkhoff <lars.s  2008-05-17 09:22:21 
Re: delete command weirdness
"Steven M. Haflich&q  2008-05-12 22:06:07 
Re: delete command weirdness
Nathaniel Calloway <nt  2008-05-13 01:43:34 
Re: delete command weirdness
Kent M Pitman <pitman@  2008-05-13 05:42:39 
Re: delete command weirdness
usenet2.3.CalRobert@[EMAI  2008-05-13 19:42:57 
Re: delete command weirdness
Kent M Pitman <pitman@  2008-05-14 00:54:58 
Re: delete command weirdness
kodifik@[EMAIL PROTECTED]  2008-05-13 05:48:34 
Re: delete command weirdness
Leandro Rios <leandrop  2008-05-13 10:03:12 
Re: delete command weirdness
pjb@[EMAIL PROTECTED] (P  2008-05-13 15:56:28 
Re: delete command weirdness
Leandro Rios <leandrop  2008-05-13 11:07:01 
Re: delete command weirdness
Kent M Pitman <pitman@  2008-05-13 15:35:05 
Re: delete command weirdness
kodifik@[EMAIL PROTECTED]  2008-05-13 07:13:40 
Re: delete command weirdness
rpw3@[EMAIL PROTECTED] (  2008-05-13 23:04:47 
Re: delete command weirdness
danb <sogwaldan@[EMAIL  2008-05-12 22:39:32 
Re: delete command weirdness
Kent M Pitman <pitman@  2008-05-13 06:27:32 
Re: delete command weirdness
danb <sogwaldan@[EMAIL  2008-05-13 04:10:36 
Re: delete command weirdness
tar@[EMAIL PROTECTED] (T  2008-05-13 15:53:53 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan12V112 Tue Oct 7 7:41:39 CDT 2008.