haskell-jp / mokumoku-online #83

あんまり進んでないですが、ChatGPT と相談しつつテクスチャ読み込みの API を検討していました。
「6.5.3 A tricky point」の Ex.6.8 の続きを進めていました。
Copilot先生の助けを借りて、一応 6.5.3 のサンプルプログラムをテキスト通りの結果に処理するプログラムが出来上がりました。
助けていただいた部分のコード内容理解を進めています。
内容あまり理解できてないのですが10章の定理証明までは読み進めました。今の私にはカロリーが高いので次は一旦別のことやろうと思います。
昨日のAtCoderの復習をやります。
Competitive Programming in Haskell: Sparse tables: Brent Yorgey 先生の blog をもとに Kattis の問題を解きます 気付いて見れば今回が先生のシリーズ最終 blog でした その最終課題に挑みます
先週に引き続きゲームエンジンを。
S.K.です。今週もお世話になります。よろしくお願いいたします。
今週も Implementing Functional Languages: a tutorial の Chapter 6 Lambda Lifting の続きを進めて行こうと思います。
所用で遅くなってしまいましたが、 https://github.com/haskell-jp/makeMistakesToLearnHaskell/pull/122/ の修正に取り組みます。
エンジンの上に載せるゲームとしてブロック崩しを作っていました。とりあえず基本的な動きはできた。
テストを直してます。が、そもそもこのテスト今後必要なのかどうか頭を捻りながらなので遅いです。
Competitive programming in Haskell: Sparse tables: Sparse table 分かった 最終問題 Win Diesel は 木の Lexicographical BFS traversal に対して Sparse table を作り LCA を利用する しかしこれでは Kattis の判定は TLE (28/47) だった(予想通り) これはもう先々週来の問題で Yorgey 先生の Sparse table が遅い すでに手元に自作の STUArray で書き換えたものがあるが なんと最近の Kattis は Data.Vector libraries を許すようになったらしい! ので 今度はそれに書き換えようと思う 今日はここまで
「6.5.3 A tricky point」の Ex.6.8 の続きを進めていました。
時間かかってしまいましたが、Copilot先生の助けを借りた部分のコード内容を何とか一通り理解することができました(つもりです)。
これで「6.5 Mark 3: Johnsson-style lambda lifting」はとりあえず完了とさせていただき、「6.6 Mark 4: A separate full laziness pass」に移ろうと思います。
CPL (Categorical Programming Language) 酒井政裕 先生の圏論的プログラミング言語 CPL を REPL と Tutorial で学び(遊び)ます
S.K.です。ちょっと遅くなってしまいましたが、今週もお世話になります。よろしくお願いいたします。
今週も Implementing Functional Languages: a tutorial の Chapter 6 Lambda Lifting の続きを進めて行こうと思います。
遅くなってしまいましたが、いつもどおりmakeMistkakesToLearnHaskellの続きに取り組みます。
こっちに書くの忘れてました。引き続き、背景のスクロール機能を実装中です。
https://github.com/haskell-jp/makeMistakesToLearnHaskell/issues/78 の課題に取り組んでいます。延長戦で多分pull requestを出せる
とりあえずスクロールの前提として、キャラがピクセル単位ではなくタイル単位で移動するようにしました。移動中の先行入力が必要なので意外と複雑だった。
「6.6 Mark 4: A separate full laziness pass」の部分を読み始めました。
自分にとってはかなり難解な内容で、前半部分(6.6.1から6.6.3まで?)の原理的な説明部分と後半部分(6.6.4から6.6.9まで?)のコード説明部分を行ったり来たりしてるうちに時間となりました。
理解するまでにかなり時間がかかりそうですが、自分に可能なペースで進めて行こうと思います。
CPL (Categorical Programming Language) 圏論的プログラミング言語 CPL の Tutorial だけ読了 存分に脳内爆発を味わった REPL まで到底及ばず後日また挑戦し(学び(遊び))ます それにしても 『2引数関数を「関数を返す1引数関数」に変換する操作がカリー化』とか『1+2=3』が次式とはスゴ過ぎだろう
cpl> simp add.pair(s.0, s.s.0)
s.s.s.0
: 1 -> nat