草庐IT

zeromq4-haskell

全部标签

了解Haskell中的类型关键字

从我对类型关键字的理解,type关键字创建同义词。typeString=[Char]但是我该如何解释这样的事情:typeNewtype=BoolIntString看答案正如人们可以阅读的那样文档:2类型和newtype人们可以将类型引入Haskell程序的其他两种方式是通过type和newtype语句。type引入同义词对于类型并使用相同的数据构造函数。(..)使用类型声明时,类型的同义词及其基本类型几乎在任何地方都互换(处理实例声明时有一些限制)。所以type=只需重命名A(通常更复杂)的类型表达式即可。结果,第二个代码片段是无效的.但是,可能有高阶类型喜欢:typeAlias=Either

iOS zeromq 有时无法在发布/订阅中启动时接收消息

我正在使用ZMQ稳定版3.2.4并将其编译到iOS中并且还使用IOSZMQApi。它在大多数时候都能完美运行。但是,有时当启动应用程序时,第一条消息丢失并且接收器一直处于空闲状态。重新启动应用程序后,它再次运行良好。是否需要在subSocket中设置一些以使其更稳定?这是我的代码:IP_ADDRESS=@"127.0.0.1";NSString*kEndPoint=[NSStringstringWithFormat:@"tcp://%@:%d",IP_ADDRESS,PUB_PORT];self.pubSocket=[ctxsocketWithType:ZMQ_PUB];[self.p

为什么将这种haskell函数推断为这种类型?

我是Haskell的初学者,通过现实世界Haskell的第2章练习工作,您可以编写一个返回列表中二次元素的函数。我已经编写了以下功能来解决此问题:--file:\LearnHaskell\lastButOne.hslastButOnexs=iflengthxs==2thenheadxselselastButOnetailxs我不明白的是编译器抛出的错误:lastButOne.hs:2:1:error:•Couldn'tmatchtype‘[a]->[a]’with‘[t]’Expectedtype:([a]->[a])->[t]->tActualtype:[t]->t•Relevantbind

php - 使用 PHP 作为 "front end"的 Haskell Web 应用程序

Haskell网络开发世界发生了很多伟大的事情,一些可用的框架(Yesod和Snap服务器)似乎相当成熟。然而,学习曲线可能有点陡峭,也许构建Web应用程序不能完全被视为Haskell的强项。另一个SOquestionofmine的答案表明在Haskell中编写PHP扩展应该是可能的。事实上,我目前正在尝试将一个小型Haskell程序转换为一个PHP扩展,作为概念验证。所以,问题是-是否有必要创建一个Haskell网络框架,作为PHP扩展运行,并将所有请求/响应/cookie等留给PHP处理?创建这样一个框架涉及哪些设计决策?现在,我唯一能想到的是它可能会公开一个XML/JSONAPI

状态单:如何在Haskell中``print`印刷中级价值''

我是Haskell的新手,我有遵循代码moduleStateTestwhereimportControl.Monad.State.Lazytick::StateIntInttick=donIntplusOne=execStatetickmain=print$plusOne1我想打印状态价值之后put(n+1)并继续这样的计算tick=don整个代码如何遵循?看答案如果要在状态计算中运行IO操作,则可以更改tick返回StateTIntIOInt并使用liftIO。那么您可以使用execStateT:importControl.Monad.State.LazyimportControl.Mona

php - 为什么 websockets 在一段时间后停止广播? (实现使用 ReactPHP、Ratchet 和 ZeroMQ)

我有一个小型websocket服务器,运行在一组库之上:ReactPHP,Ratchet和ZeroMQ,使用php-zmq包装器。代码与教程中的基本相同。事件循环正确启动,用户能够连接到服务器,他们收到正确的消息,当对方推送一些东西时,但过了一段时间,通常是几天(取决于用法)消息停止到达。使用量一点也不大-目前只有一两个前端开发人员连接,因为这是一个开发阶段。循环正在运行,它返回HTTP101Switchingprotocolsonconnectcorrectly,但不广播之前正确广播的消息。任何地方都没有错误。重新启动事件循环会有所帮助。我的问题是:1)什么会导致这种情况?有人遇到过

javascript - 如何将 ZeroMQ 套接字与 Ratchet web-socket 库绑定(bind),以便为 php 应用程序实时应用?

我只是这个涉及websocket、Ratchet和ZeroMQ的整个领域的初学者。我的基本理解:websocket有助于在服务器和客户端之间创建开放连接。Ratchet是一个基于PHP的库,它使用PHP的核心Socket函数来创建一个PHP套接字框架,使我们能够轻松地进行PHP套接字编程。ZeroMQ是一个套接字库,可帮助非Ratchet应用程序(其他PHP脚本)通过Ratchet套接字和网络套接字发送数据。我正在按照ratchet中关于“helloworld”和“pusher”的教程进行操作,但它们似乎都不完整,并且只教授如何仅使用控制台。我还在github中找到了Ratchet示例

php - Gearman 与 ZeroMQ

有人对这些引擎的分布式架构有一些反馈吗?哪个是最好的,或者在哪些情况下哪个是最好的选择?问候! 最佳答案 Gearman和ZeroMQ都有不同的用途。ZeroMQ更像是套接字编程,或者更确切地说:Thesocketlibrarythatactsasaconcurrencyframework.另一方面,Gearman是一个分布式作业/worker解决方案。虽然很简单,但它确实很好地达到了目的。Gearman有实际的工作服务器和库来创建客户端。使用ZeroMQ,您还必须自己构建作业服务器。因此,根据您的需要,使用的答案会有所不同。如果您

Haskell功能定义无法正常工作

我是功能编程和Haskell的新手。试图学习它。不确定以下定义有什么问题:test.h中的功能定义drop5[a]=drop5[a]尝试使用此功能我会发现程序错误$:loadtest.h$drop5[2,3,4,5,6,7,8]Programerror:patternmatchfailure:drop5[2,3,4,5,6,7,8]$:tdrop5drop5::[a]->[a]当我将定义更改为遵循它时;这意味着它获取列表并删除列表的前5个元素drop5ns=drop5ns在这种情况下,当打印类型时,我会看到:$:tdrop5drop5::[a]->[a]我不确定为什么第一个定义与第二定义不同?

android - 如何在 ZeroMQ(jzmq) 3.xx 中使用 XPUB 和 XSUB 实现带有代理的发布-订阅网络

我正在尝试使用下图中提供的XPUB和XSUB来实现。我已经完成了他们提供的示例,但无法获得Java中的XPUB和XSUB。Here他们在C中给出了一个示例,这个示例有点复杂,因为我是ZeroMQ的新手。我正在尝试使用jniwrappedversion在android中使用它.请帮我找一个例子,如何使用java在ZeroMQ中实现这个带有代理的Pub-Sub网络。目前我指的是http://zguide.zeromq.org/page:all我试过如下移植它。订阅者.javapublicclassSubscriberextendsThreadimplementsRunnable{priva