問題タブ [haskell-diagrams]
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 - 戻り値の型にのみ現れる型変数を理解する
関数の戻り値の型にのみ現れる型変数を理解して使用する方法を理解するのに苦労しています。
diagrams-cairoを使用して、2 つの図をピクセルごとに比較しようとしています。renderToList関数の型は次のとおりです。
のリストのリストを返しますAlphaColour a
。a
であることを念頭に置いて、これらの値に対して(Ord a, Floating a)
数学演算と比較演算を使用できると考えました。AlphaColour a
ただし、不吉なコンパイルエラーが発生します
コンパイラーがrenderToList
呼び出しの完全なタイプを知りたがっていると私は理解しています。
しかし、私が理解していないのは次のとおりです。
- コンパイラが完全な型を知る必要があるのはなぜですか?
Ord
インスタンスで利用可能な操作のみを使用していると思いFloating
ます。 - 型を提供する必要がある場合は、コードの正確な場所でこの型を定義します。
- 返された完全な具象型が何であるかを知るにはどうすればよい
renderToList
ですか?
このコードの書き方に根本的な何かが欠けているように感じます。どんな助けでも大歓迎です。
haskell - Haskell ダイアグラム SVG ファイルの余白
私はこの図の例を試しています:
結果は次のとおりです。
一部の数字 (より正確には、これらの数字の中心) が画像の端近くに配置されているため、すべてが期待どおりに表示されるため、最終的には切り取られたように見えます。
これを解決する方法はありますか?
haskell - このダイアグラム コードが期待される結果を生成しないのはなぜですか?
ユーザーマニュアルのコードは次のとおりです。
これが私が得たものです:
マニュアルでは次のように表示されます。
それらは完全には一致しません。
haskell - OS X にダイアグラムをインストールしようとしています
OS X にダイアグラムをインストールしようとしています。ダウンロード中に、次のようなエラー メッセージが表示されます。
それからしばらくして、リンクされたパッケージが成功した後:
誰もそれを解決する方法を知っていますか?
私の gtk と cabal はすべて最新です。
ありがとうございました :)
haskell - Haskell ダイアグラムを使用して、指定された座標で点と線を描画します
絶対 x 座標と y 座標を持つポイントのリストがあります。
ポイントのタプルとしてのエッジのリスト:
diagrams
ノードに円、エッジに線を使用して、パッケージを使用してこれを描画したいと思います。Located
この機能を提供するタイプを見つけました。一方、atPoints
関数がありますが、同じことを達成していないようです(atPoints
ローカル原点のみを移動します)。
これを達成するための偶像的な方法は何でしょうか? 型の使い方はLocated
?
haskell - ダイアグラムのインストール中にこれらの cabal インストール エラーを修正するにはどうすればよいですか?
Cabal を使用して、haskell で記述されたダイアグラム パッケージをインストールしようとしています。実行すると次のエラーが表示されますcabal install diagrams
コマンドを使用して cabal で bytes-0.15.2 を個別にインストールしました
cabal install bytes
。何がうまくいかないのですか?ダイアグラムをインストールするとき、キャバルは不必要にバイトを再度インストールしようとしているようです。
これらのコンパイル エラーを修正するにはどうすればよいですか?
これを、ghc バージョン 7.6.3 および cabal バージョン 1.22.7.0 を使用して Ubuntu 14.04 で実行しています。