X,Y,Zは1以上100以下の整数
A_iは1 以上100 以下の整数
(0 ≤ i ≤ X−1)
B_iは1以上100以下の整数
(0 ≤ i ≤ Y−1)
C_iは1以上100 以下の整数
(0 ≤ i ≤ Z−1)
A_i + B_j = C_k の個数を求める
っていう全探索問題をHaskellで解こうとしたときに、AとBの総当たりの和のリストを先に作って、その後に==Cを評価する、っていう感じで書いたんだけど、和のリストを作るときに配列がネストされて、最終的な計算をするときに
sum $ map (sum . map (calAnswer c) . sums a) b
みたいにめっちゃmap使った感じになっちゃったんだけど、なんかうまい方法ないのかな…

Elm, Kotlin, Pythonを行ったり来たりしてるけど、とても勉強になる。ほんとはこれにHaskelも入れたい。

テスト駆動開発の本をなぞってるんだけど、なんかpythonのgetattr関数が面白いな。getattrにString与えるとそのメソッドを抽出して変数?に格納できるのか。関数型言語でも同じようなことできると思う思うけど、そもそもclassがないから、Stringで抽出するっていう概念がないし、単純に合成関数になるんだろうけど。

昨日無事にVPN接続、Chromeダウンロード、VS Codeダウンロードと進めて、開発環境はうまいこと整った感じです。

ところでLinux機はSteam入れられますか?(結局ゲーム)

ゲームのプラットフォームは他にある?

とりあえずGUIまでいけたんだけど、VPNが設定のせいかうまくいかない…VPNないとChromeがダウンロードできないんだよなー

とりあえず試しにexit打ったらUSBメモリから立ち上がった…

あ、違うか、getLineがIO StringだからそこからIOだして処理してからまた元に戻してやるよ!ということ?

Haskellの下記の<$>はいわゆるひとつのモナドってやつなんですか?

[n,m] <- map read . words <$> getLine

無名関数って使うべきなの?というか使って大丈夫なの?

UUIDの取り出し方わかった!ドキュメントの読み込みが足りなかったのか...な…むずいな

むしろ、シード値はRandomな値を与えて生成してね、と書いてある割に、Randomは54bitsしかないから使わないでね!って書いてあって、なんだこれは…

あ、根本的な勘違いをしていたみたいです。

ElmでUUID作るにはUUID.generatorというのがあって、それだとランダムUUIDを作成してくれるみたいです。(いわゆるUUID4)

無理やりシード値を与えると同じUUIDが生成されるみたいですね。

ただ、そのランダムに生成されたUUIDの取り出し方法がわからない…w←別の問題

あれ、でもUUID4も同じシード値からは同じUUIDが出てきますよね。

とすると、現在時刻がIDとして適切ではないという場合、シード値で現在時刻を使用したら実質一緒ということですか?

UUID4はランダムなUUIDを作成、UUID5はシード値によって同じUUIDを作成、とすると、

例えばタスクリストのタスクにつけるIDはUUID4で、ユーザーを特定したりするために使うのがUUID5、みたいな使い分けですか?

Show older
マストドン丼部

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!