問題タブ [pointfree]
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.
function - 関数適用:なぜここで$が使われるのですか?
少し前に$について質問したところ、役に立つ答えが返ってきました。実際、使い方は理解できたと思いました。
私は間違っていたようです:(
この例は、チュートリアルに表示されます。
なぜ$がそこで使われたのか、私には一生分からない。ghciも私を助けていません。私が行ったテストでさえ、単に$を省略したバージョンと同等であることが示されているようです。誰かが私のためにこれを明確にすることができますか?
haskell - Haskellのカリー化とポイントフリースタイルについての混乱
関数を実装しようとしていました
これがこの質問のトピックでした。明示的な再帰なしでこれを実行しようとしました。私は次のコードを思いついた
私の関数は怠惰ではなかったので機能しませんでした(これは質問で必要でした)ので、そこには賛成票はありません:-)。
しかし、私はそこで止まりませんでした。関数をポイントフリーにして、短くする(そしておそらくもっと涼しくする)ようにしました。引数f
とxs
は式の最後のものなので、私はそれらを削除しました:
しかし、これは期待どおりに機能しませんでした。実際、まったく機能しませんでした。
何故ですか?基本的にカリー化の目的である、末尾の関数の引数を単純に削除できるという印象を受けました。
haskell - 反転/反転した fmap (<$>)?
次の定義を見つけました
次のようなコードを書くことができます。
私にとっては、代替案よりも理にかなっています。
明らかに、それは単なる順序の問題です。
他の誰かがこれをしますか?このようなコードを書かない正当な理由はありますか?
haskell - Haskellでポイントフリー
ポイントフリーにしたいこのコードがあります。
(\k t -> chr $ a + flip mod 26 (ord k + ord t -2*a))
それ、どうやったら出来るの?
また、「このamdについて考えて何かを思い付く」以外に、ポイントフリースタイルの一般的なルールはありますか?
function - 関数適用から関数合成までの Haskell 型エラー
この質問は、antal sz が回答したこのFunction Composition VS Function Applicationに関連しています。
どうやってこれを手に入れることができますか?
次のコードに関数合成の型エラーがあるのはなぜですか?
しかし、これには型エラーはありません
関数合成を利用するには、ポイントフリー関数を書く必要がありますか? 関数合成の使い方がまだよくわかりません。
助けてください。ありがとう。
haskell - この関数の無意味バージョンがこのように見えるのはなぜですか?
ポイントフリー形式での書き込み関数の練習など、Haskell をかなりいじっています。関数の例を次に示します。
この関数をポイントフリー形式で書きたいと思います。他の場所で見つけた例を次に示します。
(sum .) . zipWith (*)
しかし、ポイントフリーフォームが の代わりに のように見える理由がわかりませんsum . zipWith (*)
。sum が角かっこで囲まれ、合成演算子が 2 つあるのはなぜですか?
haskell - Haskellマップ/zip対 リスト内包
次のうち、あなたが書く可能性が最も高いのはどれですか?
また
インターネット上のサンプルコードは、前者がより豊富で好ましい方法であることを示しているようです。
functional-programming - ポイントフリーコードをいじっていますか?
ポイントフリープログラミングを試すために、Factor 言語と J 言語を学んでいます。言語の基本的な仕組みは明確に見えますが、アルゴリズムの設計にどのようにアプローチするかを理解するのは簡単ではありません。
私にとって特に混乱の原因は、さまざまなパラメーターを簡単に試すことができるようにコードを構造化する方法です。これは、Mathematica と Matlab が非常に得意とする類のものを意味します。アルゴリズムを設定して変数を操作し、何が起こるかを観察します。
明示的な変数なしでこれを行うにはどうすればよいですか? たぶん、私はこれについてすべて間違って考えています。ポイントフリープログラミングでこれにどのようにアプローチすればよいですか?
haskell - ポイントフリーフォーム対スタイル
変換できますか
明快さを維持しながらポイントフリースタイルにする(私はプログラム「ポイントフリー」を知っていますが、コードをさらに難読化したくない)?
いずれにせよ、関数のスタイルを改善するために、またはその意図をより明確にするために、どのような変更を加えることができますか?この機能は、以下のように使用することを目的としています。
使用するのに適した命名規則は何ですか(ps、ps'、es、およびes'変数を参照)。