問題タブ [deriving]
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.
haskell - マルチパラメータ型による拡張機能の導出
識別子の型によってパラメーター化された Ast 型のコンストラクターがあります。DeriveFunctor、DeriveFoldable、および DeriveTraversable 拡張機能を使用すると、適切なインスタンスを自動的に作成できます。
より多くの型パラメーターを導入すると便利だと思いますが、残念ながら上記の方法はスケーリングしません。理想的には、Ast 型を選択型でラップして、適切な型パラメーターに fmap できるようにしたいと考えています。インスタンスを自分で定義せずに同様の効果を達成する方法はありますか?
編集:
元の Ast の外観の小さな例を次に示します。
haskell - Haskellでの導出は何をする/意味するのですか?
スタック オーバーフローによる派生の定義は次のとおりです。
「Haskell では、派生インスタンスは、データまたは newtype 宣言と組み合わせて自動的に生成されるインスタンス宣言です。派生インスタンス宣言の本体は、関連する型の定義から構文的に派生します。」
どれも正直言ってよくわかりません。
以下のコードは以下から取得したものです:リンク
私の質問は、この特定のケースで deriving-statement は何をしますか? また、deriving-statement は一般的に何をしますか?