2023-02-17から1日間の記事一覧

カリー/ハワード/ランベック対応から見る関数と定理

関数の意味: 関数そのもの=集合圏の射 関数定義 関数{定義}?ヘッド+関数{定義}?ボディ 関数定義ボディは計算項 定理・証明の意味: 定理(証明)そのもの=演繹圏の射 定理記述 定理{記述}?ヘッド+定理{記述}?ボディ 定理記述ボディは証明項 「証明」の…

TypeScriptの型述語、型ガード、型アサーション関数、その他

例によって用語がややこしい。 型述語は、value is string のような構文。タイピング述語、タイピング関係といったほうが良いが、「型述語」。これは、型ガード関数や型アサーション関数の戻り値位置に書く形式。 型ガードが実は述語〈ブール値をとる関数〉…

シーケント記法とステージ

前提: 条件{節}? conditional clause 事実: 主張 assertive sentence 判断: 証拠付き主張 / 証拠 with Evidence 質問: 疑問文 interrogative sentence / Question コンテキスト、項、戻り型〈return type〉がある。 コンテキスト 項 戻り型 記号 知識 …

SVGのpathのコマンド

曲線は入れてない。 M, m :moveTo x,y 注意: M, mコマンドの後ろに座標を連ねた場合はLコマンドとして扱われる. L, l :lineTo x,y V, v :vertical x H, h :horizontal y Z, z : endPath pathの属性は: stroke="noneか色" : 描画線の色。noneだと何も…

拡張do記法

https://dl.acm.org/doi/pdf/10.1145/3547640 より:

SVGの破線・点線

SVGの点線・破線は: 破線と点線の区別はない。幾つかの属性を使用する。 stroke-dasharray stroke-linecap storoke-dashoffset stroke-dasharray="間隔" 間隔は none 、または数値のカンマ区切りリスト、「描く/描かなない」の交代的並びで、繰り返し適用…

SVGのシンボルとユース

定義側: <defs> <symbol id="dogstamp" viewBox="0 0 395 372"> <path d="..."/> </symbol> </defs> 呼び出し側: <svg x="0" y="0" width="192px" height="166px" viewBox="0 0 192 166" > </svg>

Leanのモナド 2

総称型も「型」と言ってる。Type u → Type v は宇宙非エンド〈universe non-endo〉な型関数だが、これが単項〈1パラメータ〉の総称型。関手やモナドの台構造はこの種の「型」。広義の“型”上に構造が載るので型クラスになる。 「総称型=型関数」という“型”上…

ステージ構造〈レベル〉とシナリオ

https://www.slideshare.net/onoremiz/mmorpg-14352457 より: レベルの要素とは: アイテムの配置 地形や動線の設定 敵の配置/AIの設定 ギミックの配置 クリア条件の設定 レベルデザインとは: ゲーム内の環境や経験をデザインすること。 レベルエディタ〈…