小编Dan*_*yer的帖子

Haskell中的孤立实例

使用该-Wall选项编译我的Haskell应用程序时,GHC会抱怨孤立的实例,例如:

Publisher.hs:45:9:
    Warning: orphan instance: instance ToSElem Result
Run Code Online (Sandbox Code Playgroud)

类型类ToSElem不是我的,它由HStringTemplate定义.

现在我知道如何解决这个问题(将实例声明移动到声明Result的模块中),我知道为什么GHC更愿意避免孤立的实例,但我仍然相信我的方式更好.我不在乎编译器是否带来不便 - 而不是我.

我想ToSElem在Publisher模块中声明我的实例的原因是因为它是依赖于HStringTemplate的Publisher模块,而不是其他模块.我试图保持关注点的分离,并避免让每个模块依赖于HStringTemplate.

我认为,与Java的接口相比,Haskell类型类的优点之一是它们是开放的而不是封闭的,因此实例不必在与数据类型相同的位置声明.GHC的建议似乎是忽略了这一点.

所以,我正在寻找的是要么认可我的想法是正确的,要么我有理由忽视/压制这个警告,或者更有说服力的反对我做事的做法.

haskell typeclass ghc

82
推荐指数
5
解决办法
7764
查看次数

什么是遗传编程?

我已经非常成功地完成了相当多的遗传算法工作,因此忽略了遗传编程.据我所知,大多数程序仍由程序员编写,我很想知道什么是遗传编程?

我想到的一些可能的解释是:

  1. 搜索空间太大,无法在噪声中找到有用的程序
  2. 大多数真实应用程序无法提供足够的数据来进行这种空间的适应性评估.
  3. 很难将许多实际应用的功效降低到单一适应度量.换句话说,编写合适的适应度函数可能需要与编写实际程序相同的工作量.

有任何想法吗?

algorithm genetic-programming evolutionary-algorithm

57
推荐指数
4
解决办法
8560
查看次数

Log4J记录器应该声明为瞬态吗?

我正在使用Java 1.4和Log4J.

我的一些代码涉及序列化和反序列化值对象(PO​​JO).

我的每个POJO都声明了一个记录器

private final Logger log = Logger.getLogger(getClass());
Run Code Online (Sandbox Code Playgroud)

序列化程序抱怨org.apache.log4j.Logger不是Serializable.

我应该用吗?

private final transient Logger log = Logger.getLogger(getClass());
Run Code Online (Sandbox Code Playgroud)

代替?

java logging serialization log4j

30
推荐指数
4
解决办法
2万
查看次数

Vim中的模式感知XML编辑

在IntelliJ IDEA中编辑XML文件时,如果文档引用模式,IDEA将获取模式并使用该信息进行自动完成.它知道哪些标签在哪些上下文中有效,所以当你按CTRL空格时,它只建议那些标签.它还会根据架构突出显示任何无效的标记.

有没有人知道提供类似功能的Vim扩展?

xml vim xsd

20
推荐指数
2
解决办法
8601
查看次数

wxHaskell和Gtk2HS的相对优点是什么?

哪个更适合用Haskell,wxWidgets(通过wxHaskell)或GTK(通过Gtk2HS)开发GUI应用程序?

各自的优点和缺点是什么?它是否会根据您所针对的平台而有所不同(我主要是在OS X上工作,但我希望我的程序也可以在Linux和Windows上运行)?

user-interface haskell wxhaskell gtk2hs

20
推荐指数
1
解决办法
2738
查看次数

Maven放置在JAR文件中的POM文件的重要性是什么,它是否被任何东西使用?

当Maven构建一个JAR文件时,它将模块的POM文件放在里面(似乎在目录<groupid>/<artifactid>中).

当我从Ant构建一个JAR文件以通过Maven Ant任务进行部署时,这个POM文件(JAR内部的文件)的存在是否重要?它似乎不是,但我只是想确保它没有在任何地方使用,并确认它应该在JAR文件中的确切位置.

java maven-2 jar pom.xml

18
推荐指数
2
解决办法
6508
查看次数

只用一部手机和模拟器测试大众

我有一个新的Android应用程序,我几天前在市场上.我在发布之前对我的机器人机器人进行了相当多的测试,并试图进行彻底的测试.好吧,我得到了一些负面的评论,说明它是如何在某人的EVO 2.2或X10上运行的(甚至不知道最初是什么).好吧,它在我的手机上运行完美.

关于我应该如何修复或支持在100种不同手机上运行的应用程序的任何建议?

其他开发者如何接近这个?(实际上没有购买每部手机).谢谢.

testing android

16
推荐指数
1
解决办法
462
查看次数

Java VM是否在内存中移动对象,如果是这样 - 如何?

Java虚拟机是否曾在内存中移动对象,如果是,它如何处理更新对移动对象的引用?

我问,因为我正在探索以分布式方式存储对象的想法(即跨越多个服务器),但出于效率原因,我需要能够在服务器之间移动对象.对象需要能够包含指向彼此的指针,甚至包含远程服务器上的对象.我正在尝试考虑更新对移动对象的引用的最佳方法.

到目前为止我的两个想法是:

  1. 在对象的生命周期内不会移动的某处保持引用间接,如果对象移动,我们会更新该间接.但是 - 这些间接是如何管理的?
  2. 保留每个对象的反向引用列表,以便我们知道在移动对象时必须更新的内容.当然,这会产生性能开销.

我对这些方法的反馈以及对替代方法的任何建议感兴趣.

java garbage-collection jvm memory-management

14
推荐指数
1
解决办法
2641
查看次数

将Android的Java VM移植到iPhone?

有没有人知道任何旨在将Android的Java VM移植到iPhone上的现有项目?据我所知,这不会太遥不可及,肯定会带来一些令人兴奋的发展.

编辑:我应该指出,我知道使用官方iPhone SDK不会发生这种情况.然而,一个越狱平台将删除苹果公司施加的任何障碍.我想大多数人都有兴趣将Android集成到iPhone中,这也是通常拥有越狱iphone的人群.

iphone android jvm

12
推荐指数
2
解决办法
3809
查看次数

生成随机数的算法

我希望生成一个随机数并将其发布到数据库中的表中,以用于特定的user_id.问题是,相同的数字不能使用两次.有一百万种方法可以做到这一点,但我希望非常热衷于算法的人能够在一个优雅的解决方案中巧妙地解决问题,因为满足以下条件:

1)对数据库的查询量最少.2)在内存中进行数据结构爬行的次数最少.

基本上这个想法是做以下事情

1)创建0到9999999之间的随机数
2)检查数据库以查看数字是否存在
或者
2)查询数据库中的所有数字
3)查看返回的结果是否与数据库中的数据匹配
4)如果匹配,重复步骤1,如果没有,问题就解决了.

谢谢.

php mysql random algorithm pseudocode

8
推荐指数
3
解决办法
6017
查看次数