1
การสร้างการต่อข้อมูลที่สัมพันธ์กันอย่างสมบูรณ์
ความจริงที่ดีเกี่ยวกับการต่อเรียงคือถ้าฉันรู้ว่ามีสองตัวแปรในสมการ: a ++ b = c จากนั้นฉันก็รู้สาม ฉันต้องการที่จะจับภาพความคิดนี้ใน concat ของตัวเองดังนั้นฉันจึงใช้การพึ่งพาการทำงาน {-# Language DataKinds, GADTs, FlexibleContexts, FlexibleInstances, FunctionalDependencies, KindSignatures, PolyKinds, TypeOperators, UndecidableInstances #-} import Data.Kind (Type) class Concatable (m :: k -> Type) (as :: k) (bs :: k) (cs :: k) | as bs -> cs , as cs -> …