小编QSp*_*der的帖子

在Haskell-Chart中生成ByteString

我根据示例eample-1使用Haskell-Chart .Haskell-Chart生成要归档的内容

toFile def "example1_big.png" $ do
...
Run Code Online (Sandbox Code Playgroud)

是否有可能生成图表内容到ByteString而不是文件?我在文档中找不到解决方案.

charts haskell haskell-chart

6
推荐指数
1
解决办法
99
查看次数

如何将createTransport与新版本的Network.Transport.TCP一起使用?

我使用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))的默认值?也许有一些例子?谢谢!

haskell cloud-haskell

4
推荐指数
1
解决办法
107
查看次数

用于生产的 PureScript UI 库

PureScript 有多个 UI 库,例如 purescript-thermite、purescript-halogen、purescript-react-simple 等。哪个库适合制作?

purescript

4
推荐指数
1
解决办法
657
查看次数

在Haskell中派生的实例

我想使用这样的派生实例:

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)

这种方式对我的项目非常方便.我找不到解决方案.

是否有任何方法可以将派生实例用于此类数据?

haskell deriving

3
推荐指数
1
解决办法
477
查看次数

在Haskell中解决一个memoization

我写了数据类型和实例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)

haskell memoization

0
推荐指数
1
解决办法
84
查看次数

在Haskell中缓存函数的结果

我使用以下函数生成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)

haskell

-4
推荐指数
1
解决办法
137
查看次数