Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!swrinde!elroy.jpl.nasa.gov!decwrl!pa.dec.com!vixie From: vixie@pa.dec.com (Paul Vixie) Newsgroups: comp.mail.sendmail Subject: Re: Idempotence of S3 (Was Re: IBM Do It Again) Message-ID: <1991Apr16.065813.24921@pa.dec.com> Date: 16 Apr 91 06:58:13 GMT References: <1991Apr12.164151.8459@csl.dl.nec.com> <1991Apr12.192026.11296@csl.dl.nec.com> <1991Apr12.213421.22457@decuac.dec.com> Sender: news@pa.dec.com (News) Organization: DEC Western Research Lab Lines: 28 In article <1991Apr12.213421.22457@decuac.dec.com> Fred said: # Shoot. I have never even heard or read the word "idempotent" until # just now. Idempotent means, roughly, that doing it N times is the same as doing it 1 time, for all N>1. In the case of S3, this is usually accomplished by bailing out near the top if the are already there, as in: S3 ... R$+<@$+>$+ $@$1<@$2>$3 bail out ... I have rarely encountered S3's that hurt you if you ran them N>1 times. Where I have encountered them, I have changed them. I'm not sure where I read that S3 was supposed to be idempotent, but I did read it somewhere and it seems intuitively correct that it should work that way. It also lets me call S3 on my way out of other rulesets, even in cases where I don't know quite what the hell I'm sending in. Btw, my Webster server didn't know about idempotency either. Cheers, -- Paul Vixie DEC Western Research Lab Palo Alto, California, USA ...!decwrl!vixie ...!vixie!paul