问题标签 [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 投票
1 回答
1729 浏览

c++ - Python对象到C++指针问题

这是我的第一篇文章 :)。我可以将 python 扩展对象转换为 C++ 指针,但我有一个问题。首先,我将向您展示我的代码,然后我将解释问题所在。

这是我的课:

增强包装:

Python代码(hello.py):

和主文件:

当我运行我的应用程序时,我可以在屏幕上看到“这是一个 Hello World !!!” 正如我所料。那么,有什么问题???假设我将 python 代码更改为:

然后,当我再次运行我的应用程序时,它崩溃了,因为我在该行中遇到了一个错误:

因为base是NULL。

更准确地说,错误是“访问冲突读取位置 0xblablabla”。当我调试时,调试器在函数处停止(我认为是 Boost 或 Python 代码)

你怎么看???

0 投票
2 回答
1379 浏览

scala - 嵌入式 scala 与嵌入式 groovy

我正在为我的应用程序搜索嵌入式语言。用纯 scala 编写的应用程序。我想在运行时添加一些功能。我有一个问题,scala 嵌入式比 groovy 嵌入式更快吗?

0 投票
4 回答
3969 浏览

php - PHP:是否有可能以某种方式将 HTML 嵌入到三元运算符的中间?

例如,我可以执行以下操作吗?

那个代码行不通。所以我猜这是不可能的,或者是吗?

0 投票
8 回答
3674 浏览

python - 在 Python 中嵌入低性能脚本语言

我有一个网络应用程序。作为其中的一部分,我需要应用程序的用户能够编写(或复制和粘贴)非常简单的脚本来针对他们的数据运行。

脚本真的可以很简单,性能只是最次要的问题。我的意思是脚本的复杂性示例如下:

其中价格和成本是一个全局变量(我可以输入环境并在计算后访问)。

但是,我确实需要保证一些东西。

  1. 运行的任何脚本都无法访问 Python 环境。他们不能导入东西,调用我没有明确为他们公开的方法,读取或写入文件,生成线程等。我需要完全锁定。

  2. 我需要能够对脚本运行的“周期”数量进行硬性限制。循环在这里是一个通用术语。如果语言是字节编译的,则可能是 VM 指令。应用调用 Eval/Apply 循环。或者只是通过一些运行脚本的中央处理循环进行迭代。细节并不像我能够在短时间内停止运行并向所有者发送电子邮件并说“您的脚本似乎不仅仅是将几个数字相加 - 将它们整理出来”那样重要。

  3. 它必须在 Vanilla 未打补丁的 CPython 上运行。

到目前为止,我一直在为这项任务编写自己的 DSL。我能做到。但我想知道我是否可以建立在巨人的肩膀上。是否有一种可用于 Python 的迷你语言可以做到这一点?

有很多 hacky Lisp 变体(甚至是我在 Github 上写的),但我更喜欢使用非专业语法的东西(比如更多的 C 或 Pascal),因为我正在考虑将其作为编码的替代方案一个我自己我想要一些更成熟的东西。

有任何想法吗?

0 投票
2 回答
832 浏览

c - Lua & 隐式全局状态

我目前正在将 Lua 集成到我的项目中,并且在途中遇到了一个小设计问题。目前,如果我想从我的主机应用程序中获取信息到 Lua 脚本中,我会调用我在 C 中注册的函数,方式如下:

现在的问题是:状态可以明显改变,“状态”变量将过时并且很可能无效。到目前为止,我一直忍受着这个,因为不需要太频繁地使用全局状态。在以下情况下问题更大:

我已经阅读了一些关于参考的内容,我认为它们可以帮助我解决这个问题,但我并没有真正理解它。

是不是有一些方法可以像我在 C 中那样抛出指针?

0 投票
5 回答
3898 浏览

c++ - 嵌入 Mono 与 Google V8?

我们想将脚本添加到项目中。

我们正在犹豫使用哪个脚本引擎。我在过去使用过 V8,它非常令人印象深刻。我也使用过 Mono,但仅限于玩具项目或原型。

约束是:

  1. 执行速度。
  2. 易于集成。
  3. 必须在 Windows 上工作。
  4. 64 位支持。
  5. 在 Visual Studio 下编译。

哪种发动机最适合?

(有没有使用 Visual Studio 在 win64 下编译 Mono 的教程?是否有一些包含 Lib 文件和 DLL 的包?)

0 投票
2 回答
4401 浏览

c# - 将 MS.NET C# 嵌入到 c/c++ 中(如单声道)

是否可以将 MS C# 编译器嵌入到非托管 c/c++ 主机应用程序中并使两种语言互操作,就像 Mono 所做的那样(如此此处)?
我有一个使用单声道的基于 Qt 的 C++ 应用程序的工作实现,但我受到 Windows 上单声道的 32 位约束(Windows 没有 64 位版本)的限制(我真的需要内存)。那么这可以通过“原始”C# 实现来实现吗?

顺便说一句:我想继续使用 GNU 编译器(mingw-w64)。

0 投票
1 回答
134 浏览

.net - 在 Silverlight 中中断解释的用户代码

我想在 Silverlight 应用程序中运行一些任意用户代码。当然,我想嵌入一个图灵完备的语言(足够简单),但不想让用户在编写一些糟糕的(非终止)代码时锁定他们的浏览器。我不是要解决Halting Problem,只需在后台线程上运行此用户代码并按一下按钮即可终止它。

即使我愿意,我也不能在 Silverlight 中使用 Thread.Abort,那么如何中断后台解释器线程呢?

我目前的想法:

  • 如果我手动解释一些语言,当然我可以在我想要的时候停止执行
  • 我可以使用 Reflection.Emit 或编译表达式树,并插入类似的检查来提前终止
  • 修改现有编译器以生成执行此操作的代码(可能是 F# 或 IronPython?)
  • 由现有工具生成的后处理 IL(这是否排除了基于 DLR 的语言?)

我不禁认为必须有一个更简单的解决方案。

0 投票
1 回答
5095 浏览

c99 - 将 Google V8 嵌入 ANSI C 应用程序 - 从哪里开始?

我想将 javascript 引擎嵌入到 ANSI C 应用程序中。

事实上,我希望能够运行一些在运行时输入的代码,同时能够与一些 C 变量和函数进行交互。

那么,V8 是唯一的选择吗?我应该从哪里开始?

0 投票
1 回答
366 浏览

windows-7 - GetThreadContext 的嵌入式单声道崩溃失败(Windows 7)

我在 Windows 7 上使用 32 位和 64 位的 mono-2.11.4 嵌入到我的 C++ 应用程序中。由于从相当旧的 2.6.4 单声道更新,我不时从 GC 收到错误“GetThreadContext failed”(似乎没有模式)。对于 32 位和 64 位,mono-3.0.1 也会出现同样的错误。

任何想法是什么原因造成的以及如何恢复稳定运行?