kachick / times_kachick

`#times_kachick channel in chat` as a public repository. Personal Note and TODOs
https://github.com/kachick/times_kachick/issues?q=is%3Aissue+is%3Aclosed
6 stars 0 forks source link

2022-07-29 - Crystal には type に対する alias はあるけれど alias_method 相当の物が無いっぽい #187

Closed kachick closed 2 years ago

kachick commented 2 years ago

なんかずっと気になってた Crystal を久しぶりに触りだしているけど楽しい。 (多分)強めの型付出来る言語でありながらルック・アンド・フィールがかなり似てるから、6割ぐらい Ruby 脳で読み書き出来るのが学習コストを程よく下げてくれてて気持ち良いのかも。

Rubyとの差異を見つけたときに根気よく探せば大体似たこと実現出来る感じなんだけど、 メソッドの alias 的な事が出来ないっぽい。macro でこう書けば大体出来るよみたいなのはあるみたいなんだけど、完全に定義を alias することは出来ないっぽい。(Ruby でも https://github.com/kachick/times_kachick/issues/160 みたいな事があるから同一とは言え無いんだろうけど) これまで9件近く issue 立った形跡があるんだけど、大事そうなのは以下かなー

https://github.com/crystal-lang/crystal/issues/1179#issuecomment-131267190 https://github.com/crystal-lang/crystal/issues/2041#issuecomment-173598249

なんでも一度実装したけど機能的に実現しきれない部分があるのと、そもそも alias が氾濫しだすと使用者側から見て学習コストが増えるから落としたのだとか。 syntax はかなり似せてるけどメソッド名とかクラス名には結構変化が加わっているから、なんでも追従するのではなくて取捨選択しようとしてるんだろうなー

refs: https://github.com/kachick/times_kachick/issues/4#issuecomment-1166558836, https://github.com/kachick/times_kachick/issues/29#issuecomment-1166418062