YoshikuniJujo's avatar
YoshikuniJujo
YoshikuniJujo@yoshikunijujo.github.io
npub1a7y7...fdm2
Haskell好き
YoshikuniJujo's avatar
YoshikuniJujo 2 months ago
HDDからSSDへの移行って、人間がはじめて経験する「記憶容量の減少」な気がする。 「古いファイルを消さない」という習慣が身についていたので、ディスク容量がすぐ100%になってしまう。 よく使うファイルをSSDに置き、あまり使わないファイルはHDDに置くみたいな、そういう仕組みが必要。というこすでにあるんじゃないかって気はする。
YoshikuniJujo's avatar
YoshikuniJujo 2 months ago
そろそろPC1台組みたいなという気持ちもなくはないのだけど、場所取るんだよなー 小さいのだと選択肢がかなりせばまるし。 一時期はインテルのマザーボードがLinuxのインストールという観点から安心感があったけど、今はどうなのだろうか。
YoshikuniJujo's avatar
YoshikuniJujo 2 months ago
個人的にはPC光るのは嫌いではない。チープさが好き
YoshikuniJujo's avatar
YoshikuniJujo 2 months ago
あと、ライフゲームの盤を定義してるモジュールの例だけど。 盤の一部に特定のパターンがあるかどうかを確認したいみたいな話があったときに、盤の一部を取り出して、それとパターンを比較するみたいな話になるけど、盤、パターン、取り出した部分は、どれもたとえば[[Bool]]で表現できる。 でも、これはあまり筋が良くない。 盤とパターンと取り出した部分はそれぞれモノとしてはちがうので、 newtype Board = Board [[Bool]] newtype Pattern = Pattern [[Bool]] newtype Clipped = Clipped [[Bool]] としたほうが良い。
YoshikuniJujo's avatar
YoshikuniJujo 2 months ago
あと「位置」を表すのに(Int, Int)みたいなタプルを使うのは「本当のところ良くな」くて、 data Pos = Pos { posX :: Int, poxY :: Int } みたいにしたほうが良くて、さらにもっと冗長で安全にするなら、 newtype X = X Int newtype Y = Y Int data Pos = Pos { posX :: X, posY :: Y } みたいにすれば「もっとベター」な感じはある。 けど、まあ「安全と簡潔」のトレードオフがある。
YoshikuniJujo's avatar
YoshikuniJujo 2 months ago
名前付けるのに「型でわかる情報はいらない」という考え方もある。 clearBoardArea :: Board -> Area -> Board ではなくて、 clear :: Board -> Area -> Board としてもいいのではという話。 もちろん名前がかぶる場合にはclearBoardAreaみたいに「区別のため」に冗長にする場合はある。 「説明のため」に冗長にする必要は「より実態にそくしている『型という情報』がある」からいらないという話。
YoshikuniJujo's avatar
YoshikuniJujo 2 months ago
モジュールFoo.Barに data Baz = ... bazToQux :: Baz -> Qux quxToBaz :: Qux -> Baz みたいに定義する代わりにモジュールFoo.Bar.Bazに data B = ... toQux :: Baz -> Qux fromQux :: Qux -> Baz のようにすることをよくやる。 オブジェクト指向には直観的にわかりやすい名前空間という側面もあるけど、それをなぞっている。 本当はFoo.Bar.Bazという名前の型を用意したいのだけど、できないのでFoo.Bar.Baz.Bとしている。
YoshikuniJujo's avatar
YoshikuniJujo 2 months ago
twitter.newって、誰がやってるかとかは知られてるのかな
YoshikuniJujo's avatar
YoshikuniJujo 2 months ago
のすたろう、のすたろうならレターパックで何を送りますか
YoshikuniJujo's avatar
YoshikuniJujo 2 months ago
「レターパックで送れ」はすべて詐欺です
YoshikuniJujo's avatar
YoshikuniJujo 2 months ago
僕がポイントフリースタイルが好きなのは、「変数名を考えなくてすむ」から。
YoshikuniJujo's avatar
YoshikuniJujo 2 months ago
DMはまずRSA暗号で相手を認証して、ディッフィーヘルマンで鍵を交換して、で暗号化して送信するってのが理想だと思う。 そうなると、まずリレーに「アリスがボブにDMを送りたがってるよ」という情報が送られて、それをボブ側のクライアントが発見する。でボブ側のクライアントが認証されて、鍵交換が行われる。でアリスが暗号化したメッセージを送る。そんな感じ。 NIPのDMもそうなってるかな。 非同期風にしたいのであれば、クライアント側でアリスのメッセージを保存しておいて、ボブのクライアントからの応答があった時点で送信するようにすれば、「人間のアリス」にとっては非同期に感じられる、かな。 適当に考えただけなので適当。
YoshikuniJujo's avatar
YoshikuniJujo 2 months ago
子供のころは「みたらし」が好きだった。今は「みたらし」「あん」「いそべ」を順に回したくなるくらい平等に好き。