我根据示例eample-1使用Haskell-Chart .Haskell-Chart生成要归档的内容
toFile def "example1_big.png" $ do
...
Run Code Online (Sandbox Code Playgroud)
是否有可能生成图表内容到ByteString而不是文件?我在文档中找不到解决方案.
我使用network-transport-tcp-0.5.1进行creatipn TCP传输.
resultCT <- createTransport host port defaultTCPParameters
Run Code Online (Sandbox Code Playgroud)
但是现在我使用的是network-transport-tcp-0.6.0软件包并因为新类型而出错:
createTransportExposeInternals
:: N.HostName
-> N.ServiceName
-> (N.ServiceName -> (N.HostName, N.ServiceName))
-> TCPParameters
-> IO (Either IOException (Transport, TransportInternals))
Run Code Online (Sandbox Code Playgroud)
如何使用(N.ServiceName - >(N.HostName,N.ServiceName))的默认值?也许有一些例子?谢谢!
PureScript 有多个 UI 库,例如 purescript-thermite、purescript-halogen、purescript-react-simple 等。哪个库适合制作?
我想使用这样的派生实例:
data Test3D = forall a. (Show a, Eq a, Typeable a, Generic a)
=> Test3D { testDt :: String
, testPrm :: a
}
deriving (Show, Eq, Typeable, Generic)
instance Binary (Test3D)
$(deriveJSON defaultOptions ''Test3D)
Run Code Online (Sandbox Code Playgroud)
但是我从GHC收到了:
• Can't make a derived instance of ‘Show Test3D’:
Constructor ‘Test3D’ has existentials or constraints in its type
Possible fix: use a standalone deriving declaration instead
• In the data declaration for ‘Test3D’
Run Code Online (Sandbox Code Playgroud)
这种方式对我的项目非常方便.我找不到解决方案.
是否有任何方法可以将派生实例用于此类数据?
我写了数据类型和实例Monad类.以下是我的源代码:
data UI a = UI { unUI :: a }
deriving Functor
instance Applicative UI where
pure = UI
m *> k = m >>= \ _ -> k
m <* k = m >>= \ _ -> m
m <*> k = UI $ (unUI m) (unUI k)
instance Monad UI where
m >> k = m >>= \ _ -> k
m >>= k = k $ unUI m
return = UI
Run Code Online (Sandbox Code Playgroud)
但是,当我使用如下功能:
generateUUID :: UI String …Run Code Online (Sandbox Code Playgroud) 我使用以下函数生成GUID:
import Data.UUID as UV
import Data.UUID.V1 as UV1
generateUUID :: String
generateUUID = UV.toString $ fromJust $ unsafePerformIO UV1.nextUUID
Run Code Online (Sandbox Code Playgroud)
我用它generateUUID来创建元素
createWidgetUI element uuid =
WidgetUI { wui_title = ""
, wui_id = uuid
, wui_attr_style = ""
, wui_attr_class = ""
, wui_styles = []
, wui_scripts = []
, wui_contents = []
, wui_children = []
, wui_element = element
}
wuiPanel :: UI WidgetUI
wuiPanel = do
return $ createWidgetUI elem uuid
where
uuid = …Run Code Online (Sandbox Code Playgroud)