问题标签 [embedded-language]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
8102 浏览

java - 在 Java 中嵌入 XQuery

我需要从 Java 中的 MusicXML (xml) 文件中检索一些详细信息。我设法在java中读取xml文件-但是通过Web服务(我必须在线,在运行我的代码时连接到互联网)。我遇到了 XQuery,您可以在其中轻松地从 XML 文件中提取信息。但我需要在java 中嵌入XQuery(即在java 代码中使用xquery),精确而不使用Web 服务。有什么可能的方法,我可以如何在 java 代码中嵌入 XQuery(从 XML 文件中读取信息)?

非常感谢任何见解、建议和想法。提前谢谢了

0 投票
1 回答
386 浏览

python - 嵌入式 Python - 时间模块中的阻塞操作

我正在使用 Python C API 开发自己的 Python 代码解释器,如 Python 文档中所述。我查看了 Python 源代码,并尝试遵循在执行 py 文件时在标准解释器中执行的相同步骤。这些步骤(C API 函数调用的顺序)基本上是:

我的代码中唯一的区别是我手动进行 AST 编译、框架创建等,然后我调用 PyEval_EvalFrame。

有了这个,我可以用我的程序执行一个任意的 .py 文件,就好像它是普通的 Python 解释器一样。当我的程序正在执行的代码使用时间模块时,我的问题就出现了:所有时间模块操作都在 GIL 中被阻塞!例如,如果 Python 代码调用 time.sleep(1),则此调用将被阻止并且永远不会被执行。

显然我做错了什么会阻止 GIL(因此会阻止时间模块),但我不知道如何纠正它。我可以控制的代码中的最后一条语句在 PyEval_EvalFrameEx 中,从那时起,我认为一切都“像在常规 Python 解释器中一样”运行。

有人有类似的问题吗?我在做什么错,所以我阻止了时间模块?希望有人可以帮助我...

谢谢你的时间。此致,

R。

0 投票
2 回答
543 浏览

python - 我可以使用 zipimport 来发布嵌入式 python 吗?

目前,我正在用我的应用程序部署一个完整的 python 发行版(原始的 python 2.7 msi)。这是一个用delphi制作的嵌入式Web服务器。

读到这里,我想知道是否可以在我的应用程序中嵌入必要的 python 文件,以减少加载文件并避免与多个 python 版本冲突。

我以前有使用python for delphi 的经验,所以我只需要知道是否只有使用发行版 + 自己的脚本运送 python dll + zip 才能工作(如果存在我必须知道的任何警告或我可以查看的示例)

0 投票
2 回答
9572 浏览

lua - 嵌入式语言:Lua vs Common Lisp (ECL)

这里有人有将 Common Lisp 作为嵌入式语言(使用 ECL)的经验吗?如果是这样,ECL 与 Lua 相比有多好?

0 投票
5 回答
11397 浏览

c++ - 任何将 Clang 作为脚本解释器嵌入 C++ 代码的教程?

我还没有使用 llvm 或 clang 的经验。从我读到的 clang 据说很容易嵌入Wikipedia-Clang,但是,我没有找到任何关于如何实现这一点的教程。那么是否可以通过 JIT 在运行时编译和执行用户定义的代码来为 c++ 应用程序的用户提供脚本功能?是否可以调用应用程序自己的类和方法并共享对象?

编辑:我更喜欢脚本语言的类似 C 的语法(甚至 C++ 本身)

0 投票
1 回答
709 浏览

c++ - 在 Obj-C 项目中嵌入 Prolog 引擎

我正在寻找一个轻量级的 Prolog 引擎来嵌入 Mac OSX 下的 Obj-C 应用程序中。
在 Java 中,有一些出色的实现具有我需要的特性:可部署性、轻便性、动态可配置性、与 Java 的集成以及易于互操作性。你能推荐一些 C/C++ 中类似的东西吗?


经过几次搜索,我找到了 YAProlog 并在此处阅读,它似乎可以用作从其他程序调用的库。但是(愚蠢的问题):

  1. 我对 UNIX 没有经验,我不知道如何使用 YAP 手册的这些命令生成 libyap.a 文件......
  2. 然后我可以在我的 Xcode 项目中复制 libyap.a 并使用它吗?
0 投票
5 回答
2541 浏览

c++ - 寻找具有 64 位支持和跨平台的 C++ 嵌入式脚本语言

我正在寻找一种适用于 32 位和 64 位机器以及 Windows 和 Linux 的脚本语言。我将把它嵌入到 C++ 应用程序中,因此我更喜欢用 C++ 而不是 C 原生编写它。我也希望脚本具有线程/异步支持。

到目前为止,我研究过的语言是 GameMonkey、Lua 和 V8 JavaScript 引擎。迄今为止,V8 JavaScript 最具吸引力。我真的不想使用 GameMonkey,因为 AFAIK 它不支持 64 位寻址。Lua 是用 C 编写的,所以我可能会使用 C++ 包装器,但我真的不喜欢混合 C 和 C++ 代码。

那么我可以看看其他一些替代方案吗?

0 投票
2 回答
1390 浏览

scala - 用于嵌入在 html 或文本(如 php)中的语言的 Scala 解析器组合器

一段时间以来,我一直在使用 Scala 解析器组合器,并学习了一些方法,使其表现良好并使用内置函数完成我想要的大部分事情。

但是如何制作嵌入式语言(如 php 或 ruby​​ 的 erb)?在实际代码的嵌入之外,它要求空格不能被忽略。

我设法制作了一个简单的解析器,它将所有文本与给定的正则表达式匹配,但我正在寻找一种更好、更漂亮的方法来做到这一点。可能有一些已经定义的函数可以完成所需的工作。

测试语言解析如下文本:

并由以下代码生成:

0 投票
1 回答
1620 浏览

java - 如何将一个闭包从groovy导入java?

我正在尝试从 groovy 脚本中提取闭包。我将闭包定义为

在我的 groovy 文件中,然后尝试通过从绑定中获取它来使用它,如下所示:

但是当我运行它时出现以下错误。

有没有办法从 groovy 脚本中获取闭包(或普通方法)?

0 投票
2 回答
1070 浏览

java - 如何从 java 的类路径外部动态加载 Clojure 脚本?

我希望启用用户定义的 Clojure 脚本来与我的 Java 应用程序交互。问题是,我事先不知道 Clojure 脚本的位置,因此在运行应用程序时我无法将它们包含在我的类路径中。

如何从我的类路径外部动态加载 Clojure 脚本?

我试过这个简单的例子:

使用如下所示的 test.clj:

但没有运气。

我认为它与RT.makeClassLoader()RT.baseLoader()使用返回的加载程序加载 clojure 文件有关,但我似乎无法使其工作。(我不断得到ClassNotFound)我可能会在 javadoc 中糊涂clojure.lang.RT,但我根本找不到它们。