Hello Gergely, Friday, October 04, 2002, 6:18:20 PM, you wrote: >>> YM> Yes. But I feel "':' to indicate local" is ugly. Many (or most) >>> YM> people want their block parameters "local to the block". But "':' to >>> YM> indicate local" requires additional mark for common case. "':' to >>> YM> indicate *external*" is better in this sense, but this also breaks >>> YM> existing code. >>> >>> may be some pragma like 'use ruby1.7" can help in providing >>> non-compatible changes to language? KG> Yes, that was I say under a different topic... >>here we go, down the perl road to disaster... >>what happened to the 'principle of least surprise' in this question? KG> That way KG> 1. The bug KG> a=2 KG> [1,2,3].map {|a| a} KG> puts a KG> CAN be avoided. "documented bug becomes a feature" :) KG> So using this pragmas, new features comes more quickly KG> to the language. (I prefer marking "old" programs, but this would be KG> unfair, you don't want to hunt for bugs in a completely written program) impossible. as each version of ruby can introduce new incompatible features, it is better to mark program text which ruby language version it uses -- Best regards, Bulat mailto:bulatz / integ.ru