Newsgroups: comp.lang.lisp
From: cyber_surfer@wildcard.demon.co.uk (Cyber Surfer)
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!news2.near.net!news.mathworks.com!zombie.ncsc.mil!news.duke.edu!news-feed-1.peachnet.edu!gatech!howland.reston.ans.net!news.sprintlink.net!demon!wildcard.demon.co.uk!cyber_surfer
Subject: Re: SETF (was ... a bunch of things)
References: <Cxxwx0.1nC@rheged.dircon.co.uk> <hbakerCy17CC.vx@netcom.com> <LOU.94Oct25140834@atanasoff.rutgers.edu>
Organization: The Wildcard Killer Butterfly Breeding Ground
Reply-To: cyber_surfer@wildcard.demon.co.uk
X-Newsreader: Demon Internet Simple News v1.27
Lines: 35
Date: Fri, 28 Oct 1994 15:11:14 +0000
Message-ID: <783357074snz@wildcard.demon.co.uk>
Sender: usenet@demon.co.uk

In article <LOU.94Oct25140834@atanasoff.rutgers.edu>
           lou@cs.rutgers.edu "Lou Steinberg" writes:

> The best I can come up with to explain "when setf is dangerous" is
> that it is dangerous when two conceptually different "things" can
> share substructure and you are operating on the substructure of a
> thing.  It is simply much more common that things made of lists share
> substructure than things made of records.

In other words, you consider destructively modifying an object to
be dangerous? If so, then I can see your point. I'm just not sure
why you're refering to as SETF, unless you're choosing to limit
the discussion to Common Lisp.

Sadly, we're not going to see an end to "assignment" (destructive
modifications) just yet. I'd love to use a Lisp that doesn't insist
on assignments, but meanwhile, I'll be content with CL. If it was
really important to me, I'd just write in CL without using SETF.

> (But yes, we do still teach beginners to beware of destructive
> operations on lists.)

Ah, is this about teaching programming? I hope so, as I recently
became curious about this. I've been wondering how it might help
programmers if they learned programming without using assignment
(like SETF, for example), but learned that later, when working
in a "real world" situation. I'd also like to know about commercial
projects (what many people refer to as "real world" programming)
that use pure functional programming languages or generally avoid
using assignment.

Martin Rodgers
-- 
Please vote for moderation in comp.lang.visual
http://cyber.sfgate.com/examiner/people/surfer.html
