From: ujihisa Date: 2009-08-24T07:05:44+09:00 Subject: [ruby-core:25056] Re: Proposal: Simpler block format I made a panoptic results list. It may help you understand what was changed by my patch. The following long list is a result of this tester. http://gist.github.com/173478 Note that 1.9.2' means the patched ruby. ----------------------------------- # '{}' in four rubies ## in 1.9.2' {} ## in 1.9.1 {} ## in 1.8.7 {} ## in 1.8.6 {} # '{1 => 2}' in four rubies ## in 1.9.2' {1=>2} ## in 1.9.1 {1=>2} ## in 1.8.7 {1=>2} ## in 1.8.6 {1=>2} # '{1}' in four rubies ## in 1.9.2' # ## in 1.9.1 -e:1: syntax error, unexpected '}', expecting tASSOC p({1}) ^ ## in 1.8.7 -e:1: odd number list for Hash p({1}) ^ ## in 1.8.6 -e:1: odd number list for Hash p({1}) ^ # '{|x| 1 }' in four rubies ## in 1.9.2' # ## in 1.9.1 -e:1: syntax error, unexpected '|', expecting '}' p({|x| 1 }) ^ -e:1: syntax error, unexpected '}', expecting $end p({|x| 1 }) ^ ## in 1.8.7 -e:1: syntax error, unexpected '|', expecting '}' p({|x| 1 }) ^ -e:1: syntax error, unexpected '}', expecting $end p({|x| 1 }) ^ ## in 1.8.6 -e:1: syntax error, unexpected '|', expecting '}' p({|x| 1 }) ^ -e:1: syntax error, unexpected '}', expecting $end p({|x| 1 }) ^ # '{ p 1 => 2 }' in four rubies ## in 1.9.2' # ## in 1.9.1 -e:1: syntax error, unexpected tINTEGER, expecting keyword_do or '{' or '(' p({ p 1 => 2 }) ^ ## in 1.8.7 -e:1: syntax error, unexpected tINTEGER, expecting kDO or '{' or '(' p({ p 1 => 2 }) ^ ## in 1.8.6 -e:1: syntax error, unexpected tINTEGER, expecting kDO or '{' or '(' p({ p 1 => 2 }) ^ # '{ p(1) => 2 }' in four rubies ## in 1.9.2' 1 {1=>2} ## in 1.9.1 1 {1=>2} ## in 1.8.7 1 {nil=>2} ## in 1.8.6 1 {nil=>2} # '{ p(1 => 2) }' in four rubies ## in 1.9.2' # ## in 1.9.1 -e:1: syntax error, unexpected '}', expecting tASSOC p({ p(1 => 2) }) ^ ## in 1.8.7 -e:1: odd number list for Hash p({ p(1 => 2) }) ^ ## in 1.8.6 -e:1: odd number list for Hash p({ p(1 => 2) }) ^ # '{ p {} => {} }' in four rubies ## in 1.9.2' {nil=>{}} ## in 1.9.1 {nil=>{}} ## in 1.8.7 {nil=>{}} ## in 1.8.6 {nil=>{}} # '{p:p}' in four rubies ## in 1.9.2' {:p=>nil} ## in 1.9.1 {:p=>nil} ## in 1.8.7 -e:1: syntax error, unexpected tSYMBEG, expecting kDO or '{' or '(' p({p:p}) ^ ## in 1.8.6 -e:1: syntax error, unexpected tSYMBEG, expecting kDO or '{' or '(' p({p:p}) ^ # '{ p, p = 1, 2, 3 }' in four rubies ## in 1.9.2' # ## in 1.9.1 -e:1: syntax error, unexpected ',', expecting tASSOC p({ p, p = 1, 2, 3 }) ^ -e:1: syntax error, unexpected '}', expecting $end p({ p, p = 1, 2, 3 }) ^ ## in 1.8.7 {nil=>1, 2=>3} ## in 1.8.6 {nil=>1, 2=>3} # 'p { 1 }' in four rubies ## in 1.9.2' nil ## in 1.9.1 nil ## in 1.8.7 nil ## in 1.8.6 nil # 'p({ 1 })' in four rubies ## in 1.9.2' # # ## in 1.9.1 -e:1: syntax error, unexpected '}', expecting tASSOC p(p({ 1 })) ^ ## in 1.8.7 -e:1: odd number list for Hash p(p({ 1 })) ^ ## in 1.8.6 -e:1: odd number list for Hash p(p({ 1 })) ^