I'm trying to create a haskell implementation of json rpc, I try to define protocol using record like this:
data Request = Request {
version :: Integer
, id :: Integer
, method :: String
, args :: [Value]
} deriving (Typeable, Data, Show)
data Response = Response {
version :: Integer
, id :: Integer
, code :: Integer
, method :: String
, result :: Value
} deriving (Typeable, Data, Show)
so i can use json library to encode/decode it.
But this code fails, because haskell will define access function automaticlly, and function names conflicts.
My question is, is there a way i can define record without access function, so i can have same attribute name in multiple record.
--
http://www.yi-programmer.com/blog/