Issue #5054 has been updated by Nobuyoshi Nakada. Description updated ---------------------------------------- Feature #5054: Compress a sequence of ends https://bugs.ruby-lang.org/issues/5054#change-57892 * Author: Yasushi ANDO * Status: Rejected * Priority: Normal * Assignee: Yasushi ANDO ---------------------------------------- Though as matz said at rubykaigi2011 ruby is a quite good language, many people hate a long sequence of `end` like this: ```ruby module MyModule class MyClass def my_method 10.times do if rand < 0.5 p :small end end end end end ``` So, I'd like to propose introducing a special keyword, en(n+)d. Using this keyword, we can rewrite the above example like this: ```ruby module MyModule class MyClass def my_method 10.times do if rand < 0.5 p :small ennnnnd ``` I know matz's already rejected a python-style block. He wrote: > it works badly with > * tab/space mixture > * templates, e.g. eRuby > * expression with code chunk, e.g lambdas and blocks http://www.ruby-forum.com/topic/108457 These bad things won't occur by introducing en(n+)d. Some implementations already exists. JRuby - https://gist.github.com/1088363 CRuby - http://www.atdot.net/sp/raw/kn9iol - http://d.hatena.ne.jp/ku-ma-me/20110718/p1 Thanks for your consideration. -- https://bugs.ruby-lang.org/ Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe> <http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>