If you use upper case for every other e, counting gets easier: eEeEeNd.

Konstantin

On Jul 20, 2011, at 16:47 , Ralph Corderoy wrote:

>=20
> Issue #5054 has been updated by Ralph Corderoy.
>=20
>=20
> Nothing seems to ensure the author will bother doing e___e___end and have=
 the e's align with the start of the blocks though.  Some may just do e_e_e=
nd or eeend leaving the reader to tediously check by counting.  We want som=
ething easy for the author to type, and easy for all the readers to verify =
is correct.
> ----------------------------------------
> Feature #5054: Compress a sequence of ends
> http://redmine.ruby-lang.org/issues/5054
>=20
> Author: Yasushi ANDO
> Status: Assigned
> Priority: Normal
> Assignee: Yasushi ANDO
> Category: Joke
> Target version:=20
>=20
>=20
> Though as matz said at rubykaigi2011 ruby is a quite good language, many =
people hate a long sequence of `end' like this:
>=20
> module MyModule
>  class MyClass
>    def my_method
>      10.times do
>        if rand < 0.5=20
>          p :small
>        end=20
>      end=20
>    end=20
>  end=20
> end
>=20
> So, I'd like to propose introducing a special keyword, en(n+)d. Using thi=
s keyword, we can rewrite the above example like this:
>=20
> module MyModule
>  class MyClass
>    def my_method
>      10.times do
>        if rand < 0.5=20
>          p :small
>        ennnnnd=20
>=20
> I know matz's already rejected a python-style block. He wrote:
>=20
>> 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
>=20
> These bad things won't occur by introducing en(n+)d.
>=20
> Some implementations already exists.
>=20
> JRuby
> - https://gist.github.com/1088363
>=20
> CRuby
> - http://www.atdot.net/sp/raw/kn9iol
> - http://d.hatena.ne.jp/ku-ma-me/20110718/p1
>=20
> Thanks for your consideration.
>=20
>=20
> --=20
> http://redmine.ruby-lang.org
>=20