type-constraints

    0熱度

    1回答

    我有一個數據類型,只有在它的參數可以排序時纔有意義,但是我似乎需要深入研究一些複雜並且可能有害的東西才能使其工作(主要是GADT)。 是我在做什麼(受限數據類型)認爲不好的haskell練習,有沒有解決這個問題的方法? 對於那些有興趣,這裏的相關代碼: {-# LANGUAGE GADTs #-} {-# LANGUAGE InstanceSigs #-} import Data.List (

    0熱度

    2回答

    我正在嘗試使用scala-cass來讀取cassandra並使用resultSet.as[CaseClass]將結果集轉換爲case類。這在運行以下工作時效果很好。 import com.weather.scalacass.syntax._ case class TestTable(id: String, data1: Int, data2: Long) val resultSet = se

    2熱度

    1回答

    我有泛型類型IMyGeneric<T> where T : IBase。 如何獲取所有類型在ninject中繼承IMyGeneric<T>? 我嘗試這樣做: this.kernel.GetAll<IMyGeneric<IBase>>(); ,但不工作及其返回0的結果。 我能得到所繼承IBase一切,然後foreach所有類型和使用this.kernel.Get(type)但後來我不得不IEnu

    15熱度

    1回答

    下面描述的所有實驗都是用GHC 8.0.1完成的。 此問題是RankNTypes with type aliases confusion的後續行動。這個問題有歸結爲類型的像這樣的功能... {-# LANGUAGE RankNTypes #-} sleight1 :: a -> (Num a => [a]) -> a sleight1 x (y:_) = x + y ...這是由類型檢查

    5熱度

    2回答

    如何覆蓋的方法Zero下面的代碼以這樣的方式,我可以在​​ [<AbstractClass>] type Currency() = abstract member Zero<'T when 'T :> Currency > : unit -> 'T type Euro (value: int) = inherit Currency() member this.V

    1熱度

    1回答

    我有關於用於在Haskell使用與foldl類型定義問題使用與foldl,我有類型: data Client = GovOrg String | Company String Integer Person String | Individual Person Bool deriving Show data Person = Person String

    0熱度

    3回答

    備註重新考慮我的問題後。 儘管我的WriteData方法的確切示例的最佳解決方案是由@Dogu Arslan提出的,但問題標題問題實際上是由@InBetween和@Fabio解決的。 I. e。對於使用WriteData方法的確切示例,最好將WriteData方法中的轉換邏輯移出,但爲了從不相關類型中提取邏輯,最好使用建議的重載。所有這三個答案對我都有幫助。 我已經閱讀了以下類似的問題 - 1,2

    3熱度

    1回答

    考慮以下幾點: class (a ~ b) => Equal a b instance (a ~ b) => Equal a b 可以說,後來我有一個數據類型: data D (c :: * -> Constraint) where D :: Proxy c -> D c 那麼這樣的事情是有效的: D (Proxy :: (Proxy (Equal Int))) 我的問題是

    2熱度

    1回答

    可以說我有 class C1 t 和 class C2 t 注意到這裏: C1 :: * -> Constraint C2 :: * -> Constraint 我可以讓 class (C1 t, C2 t) => C3 t instance (C1 t, C2 t) => C3 t 因此,我們有 C3 :: * -> Constraint 指出,C3 t只有當有效C1 t

    2熱度

    1回答

    是否有寫約束的方式: C t1 t2 :: Constraint ,使得它「滿足」(是正確的字),如果t2比賽反對t1。 例如: C (forall a. Num a => a -> a -> a) (forall a. Num a => a -> a -> a) -- good C (forall a. Num a => a -> a -> a) (Int -> Int -> Int) -