草庐IT

haskell-platform

全部标签

Java 消息服务和 Haskell

我想知道在Haskell程序中是否有任何方法可以从某些提供程序(如ActiveMQ或WebMQ)接收JMS消息。我已经看到有一个用于ActiveMQ的Haskell客户端,但它似乎没有维护。有没有人有这方面的经验或任何建议? 最佳答案 看起来我们目前拥有的主要库是:amqpzero-mq如果这些不合适,您可以将它们用作开发您自己的库的起点。 关于Java消息服务和Haskell,我们在StackOverflow上找到一个类似的问题: https://stack

java - 是否有必要从 Platform MBean Server 注销 MBean?

我已经开始使用MBean来公开有关应用程序的一些信息。几乎全部的HOWTO/教程/博客文章/在线示例都在教您如何实现MBean并将其注册到MBean服务器,但从未提及(或只是粗略地)从服务器注销MBean。我担心一个MBean需要引用一个相当重量级的对象才能提供有关该对象的状态信息。PlatformMBeanServer是否维护对MBean的弱引用或其他类似技巧,以确保在您的应用程序不再持有对它的任何引用时它最终得到GC?通常不需要取消注册,从而解释为什么没有人在JMX教程中谈论它? 最佳答案 您不能“弱”地向服务器注册一个MBea

java - 如何通过 Java 运行我的 haskell 函数

假设我在ma​​th.hs中有一个haskell函数add如何通过Java程序运行add函数并将输出存储为变量?可能像下面这样:publicintrunHaskell(StringhaskellFile){intoutput;//runaddfunctionfromfile'math.hs'andstoreresulttooutputreturnoutput;}(如果需要,我还可以访问目标文件:math.o和解释器文件math.hi以及可执行文件main.exe.) 最佳答案 简单(但笨拙)的方法:Runtime.exec()然后就

java - 使用 Haskell 将函数注入(inject) Java .class 文件

我使用Haskell编写了一个Java字节码解析器,它工作得很好。然而,下一步让我完全难住了。我的Haskell程序需要修改.class文件,以便Java程序在执行时打印:“在执行方法之前输入[方法名称]”,并且“在执行方法后退出[此处的方法名称]”。我所知道的是我们需要通过调用System.out.println来附加常量池和方法表,但我觉得我仍然遗漏了一些东西。解决这个问题的最佳方法是什么?你怎么知道如何在字节码中调用System.out.println?如何存储带有方法名称的字符串,以便稍后作为System.out.println的参数调用? 最佳答案

java - Haskell 数据类型到 Java(OO)

我正在尝试将一个简单的Haskell数据类型和一个函数转换为OO。但是我很困惑..具有以下用于算术计算的Haskell类型:dataExpr=LitInt|AddExprExpr|derivingShow--TurntheexprtoanicestringshowExpr::Expr->StringshowExpr(Litn)=shownshowExpr(Adde1e2)="("++showExpre1++"+"++showExpre2++")"现在我正在尝试转换..publicinterfaceExpr{StringshowExpr(Stringn);}//Basecasepubli

java - Eclipse RCP : Target platform - Eclipse vs. 春分?

我刚开始使用OSGi和EclipseRCP。在创建新的eclipse插件项目时,有人可以向我解释一下作为目标平台的“Eclipse”和“Equinox”之间的区别吗?我还知道Equinox是Eclipse对OSGi的实现。我在一些文章中看到eclipsercp也是基于Equinox的。那么,在新的Eclipse插件项目中,您必须选择的目标平台有何不同?最好的问候 最佳答案 选择“一个OSGi框架”:这只是创建了一个新的包,没有必需的插件或导入的包(除非您选择激活器,在这种情况下org.osgi.framework包显示在导入的包下)

java - platform 和 api 这两个词到底是什么意思?

我买了一本书《学习JavaSE6平台》。我想知道平台这个词的真正含义。因为它不只是我可以使用的一堆类。库下Netbeans中的JDK1.6节点。API是什么?和平台不一样吗?但是库不是指同样的东西吗......一堆类和一些父类(superclass)等等? 最佳答案 术语“平台”用于表示在特定上下文中被视为给定的任何软件、服务和资源的集合,因此它们可以用作应用软件的构建block(或构建更高级别的平台最重要的是——在另一种情况下被认为是平台的东西)API是应用程序编程接口(interface)的缩写。这通常意味着调用约定(函数签名等

vue报错:in ../node_modules/axios/lib/platform/index.js

报错信息截图:报错原因:第三方组件版本冲突,一般下载axios默认下载的是最新版本1.6.2,而我们只需要将axios的版本改为1.5.0即可解决办法:1-打开项目的文件夹“node_modules”2-删除里面的文件夹“axios”3-在“package.json”中,将axios的版本信息改为1.5.04-在终端输入命令:npminstallaxios@1.5.0--save5 输入运行指令“npmrundev”就可以正常运行了参考连接:vue报错:Moduleparsefailed:Unexpectedtoken(5:2)Youmayneedanappropriateloadertoha

java - Java 8 中 Haskell 的 foldr 等价物

这个问题在这里已经有了答案:HowtoreducegivenlistbyusingLambdaexpression.reduce()method(2个答案)关闭7年前。我们习惯了foldr在Haskell中你使用(例如,使用Java语法)aList并返回所需的任何类型(、List等)。例如在Haskell中,这个函数接受List并返回另一个List并用作累加器aList(只是一个例子,函数的目标无关紧要):evens::[Integer]->[Integer]evens=foldr(\xacc->ifmodx2==0thenx:accelseacc)[]现在Java8已经推出并具有函数

java - 一起使用 Platform.exit() 和 System.exit(int)

我想关闭具有指定返回码的javafx应用程序。浏览SO上的答案,我发现了以下成语:Platform.exit();System.exit(0);例如这里:StopthreadsbeforeclosemyJavaFXprogram或此处:JavaFXapplicationstillrunningafterclose这两个方法一个接一个执行,看起来我们在尝试复制一些Action。我假设,如果Platform.exit()成功,它不应该返回到调用System.exit(0)的地方。但是,如果Platform.exit()仅触发在另一个线程上运行的一些关闭操作,返回并且可以调用System.e