Subject: Re: PROGN considered intrusive? From: Erik Naggum <erik@naggum.no> Date: 1999/03/22 Newsgroups: comp.lang.lisp Message-ID: <3131062658198428@naggum.no> * Vassil Nikolov <vnikolov@poboxes.com> | I would have problems with IF* (or however one might call it). (I have | the same (psychological) problems with LOOP---with all these | deparenthesised keywords its syntax appears `brittle' to me, so | personally I find its use justified only when it offers useful | functionality in simple syntax, like COLLECT,--- when things get more | complicated with a DO.) I happen to like IF and (extended) LOOP, but the curious thing is that the proponents of IF* hate (extended) LOOP. I actually have a very hard time understanding the arguments in favor of IF* (it actually expands into a COND which I find very readable, in particular after teaching the pretty printer to indent the body of clause two more spaces), and I have a very hard time reading IF* code trying to figure out what happens with with THENRET, ELSEIF, and whatnot, but not with the COND expansion. however, there is probably a real concern somewhere in there (despite the "I don't _want_ to like IF, WHEN, UNLESS, or COND!" it sounds like), and I thought maybe it could have been PROGN. the important thing is that there's a culture of IF* users that I'd _like_ to work with, but I'm getting overpowering urges to fix it all the time when I look at such code. so I was appealing to the general Lisp community for a means to solve an underlying problem, which would remove or seriously weaken the rationale for IF*. | ... I think all CL forms that could have an implicit progn in the body do | so. IF obviously couldn't. well, not that this is important, but IF _could_ take an implicit PROGN in the else part. MACLISP did, and Emacs Lisp (consequently) does. | In any case, {} makes more sense than IF* to me. (I might use {} but I | wouldn't use IF*.) FWIW, thanks. #:Erik