2020-11-15

anond:20201115005207

Haskell ならできるよ。そしてそれが理想のかたち。

hogeset したい。hoge の型は Hogeから setHoge かな…

みたいな思考コンピュータ側に任せるべき。

  • 1語に出来るのはinitializeや主処理のexecuteくらいのもんで 基本1語は無理やろ

    • まあ確かに1語だけで済むケースは少ないと思う。 でも、冗長な名前になってるなっていうのはあって、例えば void setHoge(Hoge hoge) みたいなのだと、パラメータの型名でHogeをsetするのは...

      • どのプロパティ追加してんのか分からなくなるしリファクタリングしにくくなるからダメ

        • どのプロパティかは型名見ればわかるじゃん?まあ同じ型の違うプロパティが複数あったらダメだけど。 リファクタリングはIDEに任せればいいと思う。

          • 同じ型だけど違うプロパティなんて無限にあるぞ。特に真偽値、数値、文字列なんて無限に違うプロパティあるぞ。それで型だけで勝手にsetできるわけがない。仮に一つの型は一つのプ...

            • Haskell ならできるよ。そしてそれが理想のかたち。 hoge を set したい。hoge の型は Hoge だから setHoge かな… みたいな思考はコンピュータ側に任せるべき。

            • そうだね。setterの種類を型名で区別するのは無理があるなと書いてて思った。 例が悪いなすまん。

      • セッターがhogeしかないならまあいいけど set(Hage hage)とかあるとやだわ

      • 名前付き変数という仕組みはこの問題をかなり筋良く解決しているように思う。 例えばSwiftで func set(hoge: Int) を呼び出す時は obj.set(hoge: 42) と書く。 メソッドのオーバーロードも名前単位...

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん