アカウント名:
パスワード:
参照透過性があろうと、副作用が無かろうと、y=F(x)のyは、xが決まらなければ計算できない。関数型言語はコンパイラが依存関係を解析しやすいから「自動」並列化がしやすいというだけ。手続き型言語で並列化できない処理が、関数型言語で並列化できるようになるわけじゃない。速度を求めないなら、オブジェクト毎にスレッドを割り振って、イベントドリブンで処理させんのが分かりやすい。
それは30年くらい前の認識ですね
C#とF#はできることは基本的には同じだけど、F#のほうがはるかに強力な言語サポートがあるのです
>C#とF#はできることは基本的には同じだけど、F#のほうがはるかに強力な言語サポートがあるのです
具体例の提示希望
例えばC#ではasyncやawaitはキーワードですがF#ではコンピューテーション式にすぎません型推論もF#のほうが強力ですので、同じ処理でもずっと柔軟かつ簡潔に書けます
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
物事のやり方は一つではない -- Perlな人
いまさらC# (スコア:0)
関数型言語は並列化に あんまり向かない。 (スコア:0)
参照透過性があろうと、副作用が無かろうと、y=F(x)のyは、xが決まらなければ計算できない。
関数型言語はコンパイラが依存関係を解析しやすいから「自動」並列化がしやすいというだけ。
手続き型言語で並列化できない処理が、関数型言語で並列化できるようになるわけじゃない。
速度を求めないなら、オブジェクト毎にスレッドを割り振って、イベントドリブンで処理させんのが分かりやすい。
Re: (スコア:0)
それは30年くらい前の認識ですね
C#とF#はできることは基本的には同じだけど、F#のほうがはるかに強力な言語サポートがあるのです
Re:関数型言語は並列化に あんまり向かない。 (スコア:0)
>C#とF#はできることは基本的には同じだけど、F#のほうがはるかに強力な言語サポートがあるのです
具体例の提示希望
Re: (スコア:0)
例えばC#ではasyncやawaitはキーワードですがF#ではコンピューテーション式にすぎません
型推論もF#のほうが強力ですので、同じ処理でもずっと柔軟かつ簡潔に書けます