草庐IT

ocaml-toplevel

全部标签

python - ndb.toplevel 会破坏交易吗?

以下代码按预期工作,不会触发断言:@ndb.transactional@ndb.taskletdefFoo():assertndb.in_transaction()以下代码中断,触发断言:@ndb.transactional@ndb.topleveldefFoo():assertndb.in_transaction()我尝试用ndb.transaction调用或ndb.transaction_async调用替换装饰器,但都不起作用。ndb.toplevel和事务是否存在错误? 最佳答案 我发现问题在于两者都创建了新的上下文。tran

python - 如何从 Python 程序中调用 OCaml 函数?

我有一个用OCaml编写的大型遗留程序,我希望能够从我的Python程序中调用一些OCaml函数。我怎样才能最简单地做到这一点? 最佳答案 直接说,不。但是,如果您为Ocaml库创建一个CAPI,您可以通过调用该API。Python的ctypes模块或类似模块。同样,如果您为OCaml应用程序公开网络服务,Python可以调用它。 关于python-如何从Python程序中调用OCaml函数?,我们在StackOverflow上找到一个类似的问题: https

python - 创建第二个 Toplevel 小部件时线程化 Tkinter 脚本崩溃

我有一个使用Tkinter作为GUI的Python脚本。我的小脚本应该每X秒创建一个Toplevel小部件。当我运行我的代码时,第一个Toplevel小部件已成功创建,但当它尝试创建第二个时,程序崩溃了。我正在做的是使用after方法与root的主循环一起每5秒调用一次函数startCounting。每次调用此函数时,我都会将一个Toplevel小部件对象附加到列表中并启动一个新线程,希望该线程将运行新的主循环。如果有人能解决这个问题,我将不胜感激。顺便说一句,这只是我目前用来解决我的问题的一个小脚本,它阻止我继续我真正的学校项目。代码:importthreading,threadfr

python - OCaml 相当于 Python 生成器

法国SécuritéSociale身份证号码以两位数的校验码结尾。我已验证可以检测到所有可能的commontranscriptionerror,并发现了一些可能未检测到的其他类型的错误(例如,滚动三个连续数字)。defcheck_code(number):return97-int(number)%97defsingle_digit_generator(number):foriinrange(len(number)):forwrong_digitin"0123456789":yieldnumber[:i]+wrong_digit+number[i+1:]defroll_generator

python - tkinter 的 Tk 和 Toplevel 类有什么区别?

在Python3中,我从交互式shell运行以下命令:>>>importtkinter>>>type(tkinter.Tk())>>>type(tkinter.Toplevel())这两者都会创建单独的窗口。我假设tkinter.Tk()返回tkinter应用程序的“主”窗口,而任何其他窗口都应使用tkinter.Toplevel()创建。我注意到如果您关闭tkinter.Tk()的窗口,两个窗口都会关闭。此外,如果您调用tkinter.Toplevel()而没有调用tkinter.Tk(),则会创建两个窗口(其中一个是“主”窗口,关闭时,也将关闭Toplevel窗口)。这是准确的吗?

html - 在 OCaml 中读取 URL 的 HTML 内容

我想编写一个OCaml函数,它接受一个URL并返回一个由该位置的HTML文件内容组成的字符串。有什么想法吗?非常感谢!最好的,呼吸器。 最佳答案 我已经使用ocurl和nethtml完成了这两件事ocurl读取URL的内容(此处有大量属性;这是最少的),letstring_of_uriuri=tryletconnection=Curl.init()andwrite_buff=Buffer.create1763inCurl.set_writefunctionconnection(funx->Buffer.add_stringwrite

linux - 如何使 OCaml 可以使用从 OPAM 安装的库?

我关注了thistutorial在OCamlFFI上并通过OPAM安装Ctypes:opaminstallctypes但是,OCaml没有找到模块:openCtypes(*...*)我收到错误:UnboundmoduleCtypes看起来我需要让OCaml知道我的Ctypes安装在哪里?我是否需要更新一些路径变量来让OCaml查找我通过OPAM安装的库?这是Ubuntu15.04、OCaml4.01.0、OPAM1.2.0。 最佳答案 在您的系统上安装某些东西不会使其对编译器自动可见,这不仅适用于OCaml,而且适用于大多数传统系统

linux - 部署独立的 native OCaml 应用程序

我需要向Linuxbox部署一个依赖于多个动态库的nativeOCaml应用程序。这个想法是准备包含所有东西的独立包(不依赖于OCaml、OPAM等),并且可以安装在假设的任何现代x84Linux机器上。在理想世界中,只有一个文件可以部署和运行。我能想到的最好的办法是将所有需要的动态库(lddapp.native)与应用程序可执行文件一起部署,并通过导出LD_LIBRARY_PATH的bash脚本运行应用程序>在调用应用程序之前。欢迎提出任何让它变得更好的想法。更新一些提示:使用LinuxApplicationChecker验证与不同Linux发行版的兼容性。在稳定但有点过时的发行版(

c++ - 我如何从 Ocaml 调用 C++ 代码,使用它自己的共享库 .so ?

我需要构建一个调用共享对象的Ocaml/C++模块(Linux下的.so)只要编译一个简单的Ocaml/C++stub是一个问题,我就可以管理它,但是当我需要将.so与ocamlmklib或ocamlopt链接时,它会失败我在gcc4.5(c++0x)下工作共享对象的文件:你好.hpp#include#includeusingnamespacestd;classHelloApplication{public:HelloApplication();~HelloApplication();voidsay(strings);};typedefHelloApplication*(*create

linux - Linux 有没有好的 "OCaml Browser"工具?

我正在使用Emacs+Typerex进行OCaml编程。我之前在Windows中尝试过OcaIDE。它不如Typerex好,但它确实有一个很好的特性:Ocaml浏览器Typerex有这样的浏览器吗?(eclipse+OcaIDE在linux中可能有效,但我不像typerex那样喜欢它)谢谢 最佳答案 ocamlbrowser实际上是很长一段时间以来与OCaml编译器一起分发的程序的名称。它是用LablTk编写的,由JacquesGarrigue维护,并且位于“ocaml发行版”(而不是外部工具)中,因为它以依赖于编译器内部细节的方式