Avatar
YoshikuniJujo
ef89ee45550f7377284d31e49fc57e5732ffc2b95a7bf35d0f1291d6fa278758
Haskell好き

ghcup install ghc 9.12.2ができないな。

failed with exit code 126になる。

なんかconfigureがバイナリになっちゃってる感じなのだけど。

のすたろう、伏せ字についてどう思う?

うわさん、前に伏せ字で半狂乱になってたのに、今は自分で使うんだな。

プログラマーというものを、「翻訳者/通訳者」として考えるのか「プログラミング言語話者」と考えるのかってことかも。

AIで翻訳家や通訳という仕事はなくなったとしても、日本語話者がいなくなるわけじゃないので。

プログラマーがAIに駆逐させるかどうかってのは「プログラマーとは何か」という定義にもよる。

誰かが定義された仕様の通りにコードを書いていくだけのプログラマーは駆逐されるけど、「自分のやりたいこと」をコードで表現するタイプのプログラマーは駆逐されない。

後者の場合、もしAIを使おうと思ったら、「自分の考えたコードを自然言語に直して、それをAIに伝えて、でAIが書いたコードが正しいか確認する」みたいな感じになる。

プログラミング言語は数学の言語と同じで「思考の道具」でもあるということ。

あと、小さい値であっても、Int8とかInt16とかを使うよりもIntを使ったほうが時間効率が良くなるみたいな話。

CPUについて考えるとわかるのだけど、たとえば32ビットマシンで8ビット書きこもうとすると

1. 32ビット読み出す

2. 32ビットのうち指定された8ビットを変更する

3. 32ビット書き込む

みたいになる。

ただ、このあたりはコンパイラがアラインメントの計算で「いい感じ」にしてくれるのかもしれない。

内部的に使う場合には、まあ「どっちでもそれほど変わらない」ってとこかな。

Haskellで負にならない値についてIntを使うのかWordを使うのかは、どっちがいいのかよくわからない。

一見Wordのほうが良さそうなのだけど、パフォーマンスの問題もあり、IntとかWordとかはoverflowとかunderflowとかをチェックしない。

そうなってくると、「まちがって負の値を与えた」場合にIntだと正負のチェックをすればいいけど、Wordだと「すごく大きい整数」をチェックする必要があって、そのあたりが恣意的になってしまう。

FTCQueueはFast TCQueueでTCQueueはTyped CQueueなんだけど、CQueueのCは何だかわからない。

Yet Another heFTy Extensible Effectsを略してYafteeにしようかな。

高階エフェクトもあつかえるfreer extensible effectsが、なんか「できちゃった」気がするのだけど、どうなのかな。もっと難しいはずなので、何かまちがってるのかもしれないけど。

いいかい学生さん、ハーゲンダッツをな、ハーゲンダッツをいつでも食えるくらいになりなよ。

どや顔で名言を投稿したときに誤字る事故。

型というものが、すべてを語るみたいな話。

Hefty Algebrasの論文まだabstractだけしか読んでないんだけど、型を見たらだいたいわかった気がする。

data H h a = Pure a | forall x . h (H h) x :>>= (x -> H h a)