問題タブ [lambda-calculus]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
364 参照

lambda-calculus - ラムダ計算のヘルプ

だから私は問題のこの部分に完全に行き詰まっています。誰かが助けてくれたら最高だ…………

Z が λz.λx である項 ZZ を示します。x(zzx) は、ZZM =β M(ZZM) という固定小数点コンビネータの要件を満たします。

0 投票する
1 に答える
418 参照

perl - PerlのIO::Lambda

いくつかのPerlスクリプトのメンテナンスタスクをオフロードしました。要件の1つは、数十のファイル(HTTP)を並行してダウンロードすることです。私は最も簡単な解決策をCPANで探しに行き、IO :: Lambda::HTTPと呼ばれるこのモジュールを見つけました。

残念ながら、私は関数型プログラミングの経験(および初心者レベルのPerlの経験)がまったくないため、すべての例が文書化されているように機能することはわかりますが、ニーズに合わせて実際に変更することはできません。

たとえば、モジュールに付属のサンプルは次のとおりです。

宣伝どおりに機能しますが、IO :: Lambdaの概要から、「オブジェクト」または「暗黙的」の例をN個の並列インスタンスに制限するように変更する方法を一生理解できません。

上記の制約(たとえば、Nインスタンスへの制限)が与えられた場合のラムダコードの例を誰かに教えてもらえますか?

また、関数型プログラミングの学習を開始するための最良の方法は何ですか?それは私には完全に異質なようです。

0 投票する
1 に答える
1537 参照

c - ラムダ項を解析する方法

ラムダ計算を解析したいと思います。用語を解析し、括弧の優先順位を尊重する方法がわかりません。元:

これを行う良い方法を見つけることができません。適応されたアルゴリズムが見えません。タームは、タイプ (APPLICATION、ABSTRACTION、VARIABLE) とタイプ「struc term」の右コンポーネントと左コンポーネントを持つ構造体によって表されます。

これを行う方法はありますか?

編集

何度もお邪魔して申し訳ありませんが、本当に理解したいです。関数「expression()」をチェックして、私が正しいかどうかを教えてもらえますか。

ありがとう

0 投票する
2 に答える
2622 参照

theory - ラムダ計算を学習するための前提条件

ラムダ計算を学習するための前提条件(ある場合)を教えてもらえますか?

0 投票する
3 に答える
751 参照

compiler-construction - Haskell の脱糖戦略

純粋に機能的なプログラム用の仮想マシンを開発しています。すでに利用可能なさまざまな Haskell モジュールをテストして使用できるようにしたいと考えています。VM は、本質的に型なしラムダ計算の項を入力として受け取ります。最新の Haskell モジュール (たとえば、MPTC、パターン ガードなど) からそのような表現を抽出する良い方法は何でしょうか。私は少し調査を行いましたが、これを行うツールはまだないようです (間違っていれば幸いです)、それで問題ありません。アプローチを探しています。

特にVMが行うことの1つは評価順序を大幅に変更することであるため、GHCコアは操作に集中しすぎているようです。ラムダ計算により密接に対応するアクセス可能な中間表現はありますか?

0 投票する
2 に答える
2820 参照

lisp - 定義を使用したスキームの Y コンビネータ

固定小数点コンビネータが何であり、何に使用されるかを学ぶために、私は自分自身を書きました。しかし、ウィキペディアの例のように、厳密に匿名の関数で記述する代わりに、define を使用しました。

階乗とフィボナッチの汎関数でこれをテストしましたが、うまくいくようです。これは、固定小数点コンビネータの正式な定義を満たしていますか?

0 投票する
1 に答える
145 参照

lambda-calculus - ラムダ計算の質問 - 具体的な

私は次のものを持っています

なぜ最後の変換でいいのかわからないのですか?そうではないx.(y.y+1)(x+1)= y+1でしょうか?なぜ彼はそれを取り除くことができますかy

0 投票する
2 に答える
652 参照

functional-programming - SKI変換、関数型言語でのプログラミング方法

私は次のPrologコードに直面しています。式[X]>>Yは、ラムダ式lambda XYを表します。コードはラムダを削除し、S、K、およびIの組み合わせ式を提供します。

仕組みの例を次に示します。

HaskellやMLなどで同じ変換をコーディングしたいとします。これどうやってするの?関数型プログラミング言語で利用可能なラムダ式を直接使用できますか?または、いくつかのメタプログラミング機能に回帰する必要がありますか?

よろしくお願いします

PS:上記のコードは、非常に短いSKI式につながるSKI変換ではありません。ラムダ式本体でバインドされた変数の出現をチェックするより良いコードが可能です。

0 投票する
1 に答える
4839 参照

lambda - ラムダ計算演算子の優先順位

ラムダ計算演算子の優先順位を理解するのに問題があります。

たとえば、次のコード:

なるだろう:

また

?

さらに複雑な例:

上記の例では、括弧はどこにあるのでしょうか?

ラムダ アプリケーションが連想のままであることは知っていますが、ラムダ値はアプリケーションよりも優先されますか?

0 投票する
2 に答える
799 参照

lambda-calculus - ラムダ計算があまり (まったく) 使用されないのはなぜですか?

なぜ純粋な型付けされていないラムダ計算は、しばしば使用できないと言われるのですか?

関数の適切なライブラリがあれば、他の関数型言語とほぼ同じではないでしょうか?