プログラミング

剛体物理シミュレーションを書いた(衝突応答編)

↑ https://roodni.github.io/rigidbody/ で遊べます 想像以上に安定して動作したので、実装方法について記しておきます。 作るもの 2Dの剛体シミュレーション 衝突・静止摩擦・動摩擦 剛体が持つ情報 質量 重心回りの慣性モーメント 重心の位置 重心の速度 …

プログラミング言語の基礎概念(CoPL)の演習を解くプログラムを書いた

プログラミング言語の基礎概念(CoPL)という本があります。この本は操作的意味論と型システムの入門書なんですが、オンライン演習システムがあるのが特色で、演習問題を解くと正誤を自動でジャッジしてくれます。 導出規則にしたがって式の評価や型付けを行っ…

Lazy Kで世界に挨拶(OCamlの練習)

Lazy KでHello, world!をやりたいがSKIコンビネータは書きたくない。 最近OCamlの勉強をはじめたのでラムダ式をLazy Kのコードに変換するプログラムを書くことにする。 変換 コンビネータ論理 - Wikipediaをみるとなんか変換する方法が書いてあるので、その…

最古のbrainfuck処理系と言語仕様【Brainf*ck Advent Calendar 2019 9日目】

この記事はBrainf*ck Advent Calendar 2019 - Adventarの9日目の記事です。 brainfuckは最も有名な難解プログラミング言語といえそうである。 brainfuckの人気を支えているのはその言語仕様の分かりやすさだろう。brainfuckはコンパイラを限界まで簡単にする…