On Tue, 27 Jun 2006, Jim Jewett wrote: > (Almost) everyone agrees that the case expressions SHOULD be run-time > constants. The disagreements are largely over what to do when this > gets violated.
I like your summary and understood most of it (options 1, 2, 3, 5, 6). The only part i didn't understand was this: > Bad Case Option (4) -- Ignore problems > -------------------------------------- > > This is for optimization; go ahead and ignore any problems you can. > Maybe that branch will never be taken... Ironically, this is also > largely school I, since it matches the if semantics. Could you elaborate on what this means? Does "ignore any problems" mean "even if a case value changes, pretend it didn't change"? But that wouldn't match the 'if' semantics, so i'm not sure what you had in mind. > Bad Case Option (6) -- Undefined > -------------------------------- [...] > The down side is that people may start to count on the actual behavior > anyhow; then (in practice) we might just have Bad Case Option (5) > without documentation. I agree with this last paragraph. Option 6 seems the most risky of all. -- ?!ng _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com