エレファント・ビジュアライザー調査記録

ビジュアルプログラミングで数式の変形を表すことを考えていくブロクです。

関数プログラミング

関数プログラミングと無限論理多項式(8)

C# の例(3) C#版もコンストラクターなどを書き直したので再びここに公開します。C#版も最初は移植のためにコンストラクターを1個にしようとしていたのですが、非常に見にくくなってしまったのでコンストラクターが増えてしまいました。C#ではリストが [a] の…

関数プログラミングと無限論理多項式(5)

F# の例(1) F# で動作するようにすることはできましたが、まだよくわからないところがあります。「エレファントな群とリー代数」では「項書き換え」の「一階の項」を「一般マグマの多項式」として多項式のように扱う方法について考えました。論理プログラミ…

関数プログラミングと無限論理多項式(4)

JavaScript の例(2) (TypeScript) この記事の目的は、サーバーで無限に実行されているプログラムとブラウザーで実行されるプログラムの組み合わせがあるとき、ブラウザー側のプログラムを更新することは、サーバー側のプログラムを同じように更新することと…

関数プログラミングと無限論理多項式(3)

C# の例(2) LongDecimal クラスの説明 LongDecimal は小数点以下の任意の桁数まで計算できるクラスです。小数点より上の整数の部分は一桁しか計算できないので、このままでは普通に使うことはできませんが、ここではこれでも大丈夫です。F#に移植するため、…

関数プログラミングと無限論理多項式(2)

今回は3の平方根を1桁ずつ計算するC#の例をJavaScriptで書き直したものを考えます。 JavaScript の例 以下のコードのクラス Numbers の関数 GetNextDecimalDigit() で1桁分の処理を行っています。LongDecimal は小数点以下の任意の桁数を計算することができ…

関数プログラミングと無限論理多項式(1)

この記事では、サーバーで無限に実行されるプログラムとブラウザーで実行されるプログラムを組み合わせたものを記述する方法について考えていきます。まずC#のイテレーターで考えてみます。今後はHaskellなどのプログラミング言語とも比較していきたいと思い…