「数学」をプログラミングするには
たとえば、プログラミングで
π/4 = 1 - 1/3 + 1/5 - 1/7 + ...
を近似ではなく厳密に確かめるにはどうしたらいいの
人間が証明できるってことは、有限なアルゴリズムに書き換えられると思うんだけど 依存型がなければ、その上に型システムを構築したらいいのでは? やりたいことをやってる人は問題ないが必然的にこの道しかないみたいな考えはたいてい間違っている 型に複雑さ移動するだけで何も楽にならない
むしろ難しくなる 「道具」には役に立つとか楽になるための道具という意味がなくもない
数学は道具ではないと言うべきだった ああっ、ナメクジみたいな篦が目の裏に浮かんでくる~っ!! 縁側と玄関の間に黒電話
渡辺さんワインを持って皆勤賞
ジャラランガ・ライスシャワー サッポー「楡の木陰に高島さん」~ダンディな占い師伝説 物理をプログラミングって
シミュレーションじゃないだろ
たとえば世界がライフゲームだとして、
ライフゲームのプログラムを実行するのと、
N手後や前の状態を求めたり、パターンを分類するのは
別のこと その辺が、πを計算するのに近似値がどうのこうの言ってる連中の誤解かも知れんな 本体と付属品が別なのは当たり前だが問題は
名詞に相当するものが本体で動詞やら形容詞やらは付属品というのは本当か? >>454
圏論や型理論を記述言語にする
結局、数学を記述できる言語が必要 プログラミングをプログラミングするといえばlispだろ ジェダイは可
一階述語論理(prolog)がやられたようだな
やつは命題論理の次に最弱、プログラミング言語の面汚しよ 同じ入力に対して常に同じ出力をかえすのが数学の関数だからコルーチンは邪道 なんか圏論が万能かのように語る雑魚ってかならずいるよな
そもそも関数型言語をやるうえで言論の知識なんて1ミリも必要ないわけだけど ∃.elim(h, (w) => ((hw) => q)) append (v: Vec t n) (w: Vec t m) : (Vec t (n + m)) :=
[] w => w
x:xs w => x:(append xs w) >>466
元の概念(マイクロスレッドとかファイバ)は関数とは独立かもしれんがコルーチンの実装は関数のようだぞ
pythonはジェネレーティブ関数とよび、c#のコルーチンも関数って書いてあった >>467
1ミリも関係ないもの同士がじつは同型だったみたいな感じ?
何もしてないのに同型 lambdaはghost componentを扱えるからな
Idrisなどの関数型言語は、型推論とメタプログラミングによって増々レバレッジを得る 割り当てられたメモリの値を変更できる時点で数学はできない