問題タブ [quotations]
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.
reflection - これはF#引用のバグですか?
上記の再帰値を持つサンプルコードは、次のF#コンパイラエラーを生成します。
エラーFS0432:[<ReflectedDefinition>]用語にプレフィックススプライス演算子'%'の使用を含めることはできません
上記のコードでスライシング演算子の使用法を確認できません。バグのようです...:)
これは、経由のみの見積もりの問題のようですReflectedDefinitionAttribute
。通常の見積もりは適切に機能します。
Lazy.create
非表示のLazy.force
使用法で期待される結果を生成します。
したがって、問題は、これはF#コンパイラのバグかどうかということです。
project-management - デザインセッションの固定価格見積もりを行う方法は?
通常、私が顧客のためにシステムを作成するとき、私は時給で設計セッションを行い、その後、完全なシステム開発のために固定価格の見積もりを出します。
今、この顧客は私にカーブボールを投げました:彼はデザインの時給も望んでいません-彼は私にもすべてのデザインを行うために固定価格を見積もることを望んでいます!彼が安くしようとしているわけではありませんが、彼はデザインが長くなるほど、より多くのお金を払わなければならない状況になりたくありません-そして私はそれを理解することができます。
ビジネスレイヤーの場合、これを使用することは実際にはそれほど難しくありませんでした。彼の元の機能仕様から、コアビジネスオブジェクトが何であるかをよく理解し、設計契約で、固定でカバーされるいくつかのオブジェクトを定義しました。設計価格; 重要な新しいオブジェクトが発見された場合、それらは差異と見なされ、時間料金で請求されます。ここまでは順調ですね。
しかし、UIに関しては、物事はより厄介になり始めます。画面はいくつありますか?まだわからない。各画面には何が表示されますか?まだわからない。私たちが知っているのは、それが「ダッシュボード」タイプのシステムであり、ゲージやグラフなどの視覚的なレポートがたくさん含まれることです。 それでは、画面デザインごとに固定価格にするのでしょうか。素晴らしい定義ではありません。彼はすべてが1つの画面に表示されると言うかもしれません。たぶん、スライス&ダイスする機能を含む、「ビジュアルレポート」デザインごとの価格ですか?繰り返しますが、それほど簡単ではありません。システム全体が1つのレポートであり、すべてのインテリジェンスがそのセグメンテーションを提示する方法に組み込まれている可能性があります。
このようなUIデザインの固定価格見積もりを行う方法を知っている人はいますか?
reflection - F#引用符の中に変数を埋め込む
SQL用のF#dslを書いています(http://github.com/kolosy/furious)。
selectステートメントは次のようになります。
明らかな(そしてばかげた)質問は...見積もりをパラメータ化するにはどうすればよいですか?
私が次のように何かをしている場合:
次にz
、静的プロパティアクセサー(PropertyGet(None, String z, [])
)に解決されます。引用のみに基づいて変数/レットバインディングの値を取得できるものが必要です。アイデア?
f# - F#: 型定義での引用?
引用符で遊んでいますが、型定義の式パターンがわかりません。本当に1つもありませんか、それとも何か不足していますか?
「引用リテラルに予期しないキーワード 'type' があります。」
f# - パラメータ化されたF#引用符の生成
単純なF#引用があるとしましょう:
結果の引用は次のようになります。
ここで一般化したいので、タイプ「Pet」とプロパティ「Name」の代わりに、任意のタイプとメソッド/プロパティを定義して使用できます。これが私がやろうとしていることです:
結果の式は次のようになります。
ご覧のとおり、最初の式と2番目の式の違いは、最初の場合、最上位のNewDelegate式にPropertyGetが含まれ、2番目の式がPropertyGetをApplication/Lambda式でラップすることです。そして、この式を外部コードに渡すと、そのような式の構造を予期せず、失敗します。
したがって、引用の一般化されたバージョンを作成する方法が必要です。したがって、それが特殊化されると、結果の引用は<@@ System.Func(fun(x:Pet)-> x.Name)@@>と完全に一致します。これは可能ですか?または、生成された見積もりにパターンマッチングを手動で適用し、それを必要なものに変換するという選択肢しかありませんか?
更新。回避策として、次のアダプターを実装しました。
それは仕事をします-私は今、式を第1の形式から第2の形式に変換することができます。しかし、式ツリーを横断せずに、これを簡単な方法で実現できるかどうかを調べることに興味があります。
f# - F# クォーテーションとは
F# の「引用符」とは何ですか? また、それらは何に使用されますか?
regex - オプションの周囲の引用符でパターンを一致させるにはどうすればよいですか?
引用符を含むことができるパターンに一致する正規表現をどのように作成しますか?
引用符で始まり、引用符で終わらないパターンが許可されるため、機能しません。
機能しますが、繰り返します。パターンを繰り返さずにそれを行うより良い方法はありますか?
f# - PowerPack からの合成引用式の評価中にエラーが発生しました
見積もりを修正してから評価する方法を見つけようとしています。ここでは、基本的なことから始めて、Quotations API を使用して見積もりを作成しようとしています。引用符は問題なくバインドできますが、評価時にエラーが発生します。
f# - 引用された式の一致からモジュール、関数などのF#名を取得する方法
私はF#で引用された式のプリンターで作業を続けています。完璧である必要はありませんが、何が可能かを見たいと思います。引用符で囲まれた式を分解するためMicrosoft.FSharp.Quotations.Patterns
に使用されるアクティブなパターンは、通常、適切な場合にインスタンスを提供します。これらは、プロパティ、関数などの名前と、モジュールや静的クラスなどの「宣言」タイプを取得するために使用できます。問題は、これらのインスタンスからを取得する方法しか知らないのですが、F#の名前が欲しいのです。例えば、Microsoft.FSharp.Quotations.DerivedPatterns
MemberInfo
CompiledName
この一致をどのように書き直して返すことができ("List", "mapi")
ますか?出来ますか?
参考までに、これがStringerBellとpblasucciの助けによる私の最終的な洗練されたソリューションです。