草庐IT

HASKELL_PLATFORM_DIR

全部标签

java - 如何在 Haskell 中实现提前退出/返回?

我正在将Java应用程序移植到Haskell。Java应用程序的主要方法遵循以下模式:publicstaticvoidmain(String[]args){if(args.length==0){System.out.println("Invalidnumberofarguments.");System.exit(1);}SomeDataTyped=getData(arg[0]);if(!dataOk(d)){System.out.println("Couldnotreadinputdata.");System.exit(1);}SomeDataTyper=processData(d);

设置 "user.dir"时 Java : File. exists() 不一致

JRE6,在WindowsXP上。用不同的构造函数实例化两个File对象会导致File.exists()方法中的结果不一致。免责声明:下面的代码是抽象的,不是实际的代码。我根本不相信这是一个File.separator问题。我首先要求得到早期的react,以防我错过了一个很好理解的问题。现在看来,重置user.dir系统属性是导致此问题的原因之一。下面的代码现在可以按原样重现和使用。您可以复制/粘贴Java类并尝试它,它的行为应该与我列出的结果一致。设置:创建文件夹架构C:\toto\tmp\sub。从任何不包含tmp/sub子文件夹架构的文件夹中启动以下类。代码:publicclas

java - 我需要了解 Haskell 如何表示数据才能编写好的 Haskell 程序吗?

我是从Java背景开始学习Haskell的。当我编写Java程序时,我觉得我对对象在内存中的布局方式及其后果有着深刻的理解。例如,我确切地知道java.lang.String和java.util.LinkedList是如何工作的,因此我知道我应该如何使用它们。对于Haskell,我有点迷路了。例如,(:)是如何工作的?我应该关心吗?是否在某处指定? 最佳答案 简短的回答是否定的。在Haskell中编程时,您应该将数据结构视为纯数学对象,而不用担心它们在内存中的表示方式。这样做的原因是,在没有副作用的情况下,除了创建数据的函数和可用于

java - 这个 Haskell 函数的 Java 等价物是什么?

PhilipWadler的论文“Monadsforfunctionalprogramming”有一个函数eval的例子,它执行用Haskell编写的除法。这是改编自GrahamHutton的“ProgramminginHaskell”:dataExpr=ValInt|DivExprExpreval::Expr->Inteval(Valn)=neval(Divxy)=evalx`div`evaly我的Java等价物是:abstractclassIntegerExpression{abstractIntegerevaluate();}classValueextendsIntegerExpr

java - Java 中的 Haskell 风格内存

我知道这是异端邪说,但我试着翻译了来自http://www.haskell.org/haskellwiki/Memoization的例子到java。到目前为止,我有:publicabstractclassF{publicabstractBf(Aa);}...publicstaticFmemoize(finalFfn){returnnewF(){privatefinalMapmap=newHashMap();publicBf(Aa){Bb=map.get(a);if(b==null){b=fn.f(a);map.put(a,b);}returnb;}};}//usage:privatec

linux问题解决记录:qt.qpa.plugin: Could not find the Qt platform plugin “wayland“ in ““

linux问题解决记录:qt.qpa.plugin:CouldnotfindtheQtplatformplugin"wayland"in""一、问题分析:~~二、解决方法:(没解决)~~1、安装qtwayland52、安装好后查看位置3、Linux添加环境变量,全局生效二.解决方法一、问题分析:matplotlib库的调用有问题,可能是找不到wayland插件;二、解决方法:(没解决)1、安装qtwayland5sudoapt-getinstallqtwayland5显示qtwayland5已经是最新版(5.15.3-1),安装好了。若安装中出现问题,参考:dpkg:处理软件包xxx(–con

regex - .htaccess - 强制 url 从 'dir/page.html' → 'dir/page'

我想删除特定文件类型的所有尾随扩展名(例如删除所有.html并让其他一切保持原样)因此,例如,如果用户访问页面/how-to/use-git.html,他将被重定向到/how-to/use-git(有或没有尾随/)。任何其他请求(如/how-to/img1.jpg)将保持原样(/how-to/img1.jpg)。在四处浏览时,我找不到满足以下条件(两者)的内容:删除.html强制转到没有扩展名的url我试过这样的事情#Fromhttp://stackoverflow.com/questions/27553722/htaccess-mod-rewrite-how-to-modify-ur

python安装osgeo及shapefile库、is not a supported wheel on this platform 的问题

安装shapefile库其实是安装pyshp库可以直接使用pip命令安装,这里使用豆瓣源。python-mpipinstallpyshp-ihttps://pypi.douban.com/simple安装osgeo库、解决isnotasupportedwheelonthisplatform问题osgeo库不可以使用pip安装,首先去https://www.lfd.uci.edu/~gohlke/pythonlibs/#gdal找到所有的gdal包,但是下载哪一个?如果下载错了,使用pip安装的时候就会显示isnotasupportedwheelonthisplatform。下载的gdal包要与

c++ - 在 Haskell 中移动或复制(相对于 C++)

以这两个C++函数和示例用法为例:vectormakeVect(){vectorv={1,2,3};returnv;}//usageautov=makeVect();//vectorismovedvoidaddFour(vector&v){v.push(4);}//usageaddFour(v);//vispassedinasreference两种情况下都不会发生复制。这真的很有效。对应的Haskell函数和用法如下:makeVect::(Numa)=>[a]makeVect=[1,2,3]--usage--Q1:is[1,2,3]copiedormovedtov?letv=makeV

c++ - 使用 O(1) 元素访问在 Haskell 中实现高效的类似 zipper 的数据结构

问题我想创建一个数据类型,允许快速访问和修改其元素。是否可以在Haskell中创建一个结构和函数,其执行速度与简单的C++实现一样快?问题详情我正在用Haskell编写一个编译器。我有AST由数据类型表示,让我们考虑以下一个:importPreludehiding(id)--thisisasampledatatype,therealonehasgotalotofconstructorsdataAST=A{id::Int,x::AST,y::AST,z::AST}|B{id::Int}|C{id::Int,x::AST,y::AST}|D{id::Int,u::AST,v::AST,w: