Ruby Advent Calendar 2019 1日目の記事になります。 本記事では Ruby 2.7 で実装される Numbered parameter っぽい機能をピュアRuby で実装してみたいと思います。 またこの記事の実装は以下の記事を参考にして書いています。 Rubyのブロックつらい問題を解決する暗黙のブロックパラメータ - Qiita 4年以上前にこういうのが書かれていたのすごい。 Numbered parameter とは Numbered parameter、略してナンパラです。 ナンパラは『暗黙的にブロックの引数を参照する構文』になります。 通常ブロックで引数を受け取る場合、仮引数を定義して受け取ります。 # it という名前の仮引数を定義して、それで引数を参照する [1, 2, 3].map { |it| it.to_s + it.to_s } # => ["11
![ピュア Ruby で Ruby 2.7 の Numbered parameter を実装してみよう! - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/80ab19ae8824d7f25c0d6d0e7ce04a6826f6bde9/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-412672c5f0600ab9a64263b751f1bc81.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9JUUzJTgzJTk0JUUzJTgzJUE1JUUzJTgyJUEyJTIwUnVieSUyMCVFMyU4MSVBNyUyMFJ1YnklMjAyLjclMjAlRTMlODElQUUlMjBOdW1iZXJlZCUyMHBhcmFtZXRlciUyMCVFMyU4MiU5MiVFNSVBRSU5RiVFOCVBMyU4NSVFMyU4MSU5NyVFMyU4MSVBNiVFMyU4MSVCRiVFMyU4MiU4OCVFMyU4MSU4NiVFRiVCQyU4MSZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTU2JnM9NjZjZWNkZTdiOGFjZjdkZWRmODZiYjkwZDEzMjI0M2M%26mark-x%3D142%26mark-y%3D57%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9NzcwJnR4dD0lNDBwaW5rX2JhbmdiaSZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9ZDAxOWNjYjU5YjMxYjk2ZDg2MmJjZWI3ZGJlMmJmOWI%26blend-x%3D142%26blend-y%3D486%26blend-mode%3Dnormal%26s%3Dfcb43aa8665b99e1077a9ffa1f9850be)