小编rub*_*020的帖子

需要在GitHub上使用Qt4,sqlite3,cmake,git,gcc托管CI服务器

我在GitHub上托管了我的代码(用C++编写),并希望将它链接到托管的持续集成(CI)服务器,如Travis CIBuildHive.然后我想在我的项目页面上看到"构建传递"或"构建失败".但是当我检查这两个服务的CI环境时,Travis CI最接近gcc,git,cmake和sqlite3的可用性,但我错过了另一个Qt4的关键库,这是构建我的项目所必需的.它也应该是免费的,因为它是一个免费的开源项目.

请告诉我怎么做?谢谢.

我需要:gcc,git,cmake,sqlite3和Qt4.

c++ continuous-integration qt4 github

7
推荐指数
1
解决办法
1542
查看次数

函数式编程语言中的相互递归函数

单个递归函数可以应用尾递归优化,以防止堆栈溢出,但是相互递归函数呢?

这个答案显示了如何在F#中定义相互递归函数:

let rec F() = 
    G()
and G() =
    F()
Run Code Online (Sandbox Code Playgroud)

是否以这种方式定义,以便生成的本机机器代码或字节码最终只包含一个函数,尾递归优化应用于F和G?这会阻止堆栈溢出吗?

对于相互递归函数,尾调用算法如何工作?

另一方面,Haskell不需要这样的语法.是因为Haskell的懒惰评估?或者@augustss建议,Haskell编译器是否也像上面那样做?

f# haskell functional-programming ml mutual-recursion

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