YoshikuniJujo on Nostr: Haskellについて。筆が乗り長くなってしまった ...
Haskellについて。筆が乗り長くなってしまった
僕はHaskellが好きだから、Haskellのいいところも悪いところも好きなんだけど、他の人にもHaskellの良さを知ってもらいたくて「Haskellは他の言語と全然違ってて面白いからみんなやろう」とも言うし、「Haskellも別に他の言語と本質的な違いはないから怖くないよ。みんなHaskellやろう」とも言う。
矛盾しているようだけど、嘘をついているわけではない。
一番思うことは「安全なことはきれいに書ける」のと「危険なこともできるけど、そうするとコードは汚くなる」という話。他の言語で直面する「こっちのほうが安全だけど記述がごちゃごちゃする」「こっちはすっきり書けるけど実は危険」みたいなことが比較的少ない。
あと、値と状態とを混同していないのがすごくいいところ。
例えば、20度ってのは「値」で、たとえば「摩周湖の水温」ってのは状態。
さらに「摩周湖」ってのがオブジェクト。
「摩周湖の水温」は変化するけど、「20度が変化する」ってのはおかしい。
でさらに面白いというか、ややこしいのは「摩周湖の水温」は状態だけど「『摩周湖の水温』という概念」は値だということ。HaskellにはIORef aという型があって、これは一見「変化する状態」のように見えるけど本質的には「変化する状態につけたラベル」であって、これは値。
言うならば、ファイルの名前とファイルの内容のような関係。
Published at
2026-07-21 08:46:45 UTCEvent JSON
{
"id": "38a757245318e71ae7587114b2cc0a19fa946d1aeb2886637ef3f040c0f53813",
"pubkey": "ef89ee45550f7377284d31e49fc57e5732ffc2b95a7bf35d0f1291d6fa278758",
"created_at": 1784623605,
"kind": 1,
"tags": [],
"content": "Haskellについて。筆が乗り長くなってしまった\n\n僕はHaskellが好きだから、Haskellのいいところも悪いところも好きなんだけど、他の人にもHaskellの良さを知ってもらいたくて「Haskellは他の言語と全然違ってて面白いからみんなやろう」とも言うし、「Haskellも別に他の言語と本質的な違いはないから怖くないよ。みんなHaskellやろう」とも言う。\n\n矛盾しているようだけど、嘘をついているわけではない。\n\n一番思うことは「安全なことはきれいに書ける」のと「危険なこともできるけど、そうするとコードは汚くなる」という話。他の言語で直面する「こっちのほうが安全だけど記述がごちゃごちゃする」「こっちはすっきり書けるけど実は危険」みたいなことが比較的少ない。\n\nあと、値と状態とを混同していないのがすごくいいところ。\n\n例えば、20度ってのは「値」で、たとえば「摩周湖の水温」ってのは状態。\nさらに「摩周湖」ってのがオブジェクト。\n\n「摩周湖の水温」は変化するけど、「20度が変化する」ってのはおかしい。\n\nでさらに面白いというか、ややこしいのは「摩周湖の水温」は状態だけど「『摩周湖の水温』という概念」は値だということ。HaskellにはIORef aという型があって、これは一見「変化する状態」のように見えるけど本質的には「変化する状態につけたラベル」であって、これは値。\n\n言うならば、ファイルの名前とファイルの内容のような関係。",
"sig": "effc1742ccdb8cd0315c18d819cc9353b3cc6536943a215c5144c3f0bc5a3b2f3aa512e7acf1b50732e9c701d08e99b835fad635e72679de8e3aecc1d58fd612"
}