問題タブ [partial-functions]

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 に答える
752 参照

scala - Scala で別のオプションを使用して OrElse を取得する方法

foo1オプションとオプションがあると仮定しましょうfoo2:

foo2when foo1isの値を返すことができる演算子/関数はありNoneますか?

上記getOrElseOptionは明らかに存在しません。このように sth を実行できることはわかっていますが、やや冗長で理解しにくいものです。

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

haskell - scanl1 は本当に部分的ですか?

Haskell wiki によるとscanl1関数は部分的です。ただし、どの入力が下になるのかわかりません。リスト関数の場合、問題の入力が空のリスト ( for などhead) または無限リスト ( for など) であることに慣れていますreverse。ただし、scanl1これらのタイプのリストの両方を正しく処理しているようです。これは実際には部分関数ですか?もしそうなら、底になる入力の例は何ですか?

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

scala - isDefinedAtを定義せずにScala PartialFunctionが機能するのはなぜですか?

FirstSecondは同じように見えますが、なぜですか?

初め

2番

Scala コンパイラ が部分からの生成でFirst{ case i:Int if i > 0 && i < 3 => i } の実装形式に自動的に変換するためでしょうか。isDefinedAtif i > 0 && i < 3

また、case i:Int if i > 0 && i < 3 => i私が正しければ、Case クラスのパターン マッチングです。ただし、scala/src/library/scala/PartialFunction.scalaには、 の Case クラス定義はありませんPartialFunction

では、なぜこのケース クラス パターン マッチが機能するのでしょうか。

Scala コンパイラーは多くの暗黙的な作業をインテリジェントに行うと思いますが、何が起こっているのか、Scala コードの書き方を理解するのに混乱しています。

言語やコンパイラの仕様ではなく、Scala コードの構文と Scala のコードの書き方を理解するための参考文献があれば、提案してください。