问题标签 [runtime-compilation]

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 投票
4 回答
4354 浏览

c# - 在运行时使程序集内部对另一个程序集可见

所以我一直在寻找一种方法来做到这一点,每次我发现一些东西,都会导致不同的问题。

基本上,我有一个游戏机。控制台运行 C# 代码片段。编译的程序集需要是当前程序集的朋友,以便控制台知道当前程序集中的所有类型并可以操作它们。

问题一:每次运行控制台命令时,都会生成一个新程序集(如果有人知道怎么做,我很乐意避免这种情况),并且要成为朋友程序集,它需要与上一个程序集具有相同的名称。不幸的是,您无法卸载以前的程序集,因此新程序集无法覆盖它。这迫使我使用 AppDomains。

问题二:如果我让每个程序集使用单独的 AppDomain,然后卸载最后一个程序集,它可以工作,但我无法从当前 AppDomain 操作对象,因为它们不是从 MarshalByRef 派生的,所以当我将它们作为参数传递给它尝试序列化它们的脚本。我不喜欢 AppDomains。

所以我认为最简单的方法是在同一个 AppDomain 中生成具有不同名称的程序集,并在运行时以某种方式将它们设置为友元程序集。

我确实意识到这可能是不可能的,因此欢迎任何其他选择。

编辑:为了更清楚。脚本需要访问主/父程序集内部。不是反过来。我无法在主程序集中公开所有内容,因为我希望代码可重用。

0 投票
5 回答
1645 浏览

c - 将 x 提高到 n 次方

我是一个新手,我知道我在 Internet 上某个地方获得的这个 C 程序(学分:http ://www.geeksforgeeks.org/archives/28 )可以正常工作。


我只是想知道如何以及为什么。我在此函数中的代码行之后提出了问题/评论...


请向我解释发生了什么。也许我只是错过了一些东西。以及它是如何变成O(lg n)运行时间的。非常感谢你!

0 投票
1 回答
994 浏览

ruby - Ruby 中运行时代码生成的最佳实践

我最近开始研究解析器和解析器生成器以及它们在 DSL 设计中的用途。为了让事情开始,并用一块石头杀死两只鸟,我通过从 peg.js 中窃取一些想法编写了一个纯 Ruby PEG 解析器 DSL。不同之处在于 peg.js 会将语法编译为 JavaScript,而我的库使用解释器模式与 Ruby 提供的一些语法糖相结合,以在纯 Ruby 中执行所有操作。这增加了一些我想避免的重要开销。

为了减少一些开销,我开始考虑将生成的一些解析表达式编译为较低级别的表示。我的一个想法是用来eval评估某个对象的单例类中代码的字符串表示。这里有一些伪代码来演示这个过程:

我想知道是否有其他/更好的方法来完成这样的代码生成?我对这些东西很陌生,所以我可能遗漏了一些明显的东西。

0 投票
1 回答
130 浏览

cocoa - 如何在运行时编译 CIFilter?

我想在程序运行时做 Quartz Composer 对 Core Image Filter 补丁所做的事情: 在 Quartz Composer 中编译一个 CIFilter。Quartz Composer 有一个补丁,它使用 CIFilter 内核的文本创建 CIFilter。

我们可以在公共 API 中访问它吗?

0 投票
2 回答
1939 浏览

algorithm - 递归算法的时间复杂度

每当我看到一个递归解决方案,或者我为一个问题编写递归代码时,我真的很难弄清楚时间复杂度,在大多数情况下我只是说它是指数级的?它实际上是如何指数化的?人们怎么说它是 2^n,当它是 n!,当它是 n^n 或 n^k。

我有一些疑问——

  1. 假设找到字符串的所有排列(O(n!))
  2. 在一个数组中找到所有总和为 k 的序列(指数,我该如何计算)。
  3. 找到所有大小为 k 且总和为 0 的子集(k 会出现复杂度的某个地方,它应该会出现吗?)。

任何人都可以帮助我如何计算此类问题的确切复杂度,我可以为它们编写代码,但很难理解确切的时间复杂度。

0 投票
2 回答
127 浏览

java - 如果找不到 JRE 1.6,在项目 POM 中标记以关闭我的 Java 应用程序?

我有一个用 Java 编译的应用程序。我通过 Maven 构建我的代码。我想在我的项目 POM 中添加一个标签,这样如果在系统中找不到 JRE 1.6,它就不应该允许我的 Java 应用程序启动。

我可以得到任何帮助吗?

0 投票
4 回答
4030 浏览

c# - 在运行时将一个类动态映射到另一个类 C#

我正在尝试构建一个系统,将数据从垂直键值对存储系统转换为更传统的水平列存储。

源数据看起来像这样

它会生成类似的数据

在这种情况下有一些陷阱。首先,直到运行时我才知道目标类型中的所有字段。我对此有一个粗略的解决方案,可以在运行时根据源数据的结构生成新类。

不过,我想不出一种将数据本身映射到新类的好方法。我很想有人指出一种更简单的方法来解决问题,或者在我前进的道路上为下一步提供一些帮助。

0 投票
3 回答
4874 浏览

java - java.math.BigDecimal 的运行时构造函数数量和编译时间不匹配

我使用以下实现定义了一个名为 BigDecimalWithAttrDisplay 的新类:

当尝试运行使用此类的代码时,我得到:

有什么问题,我该如何解决?

0 投票
0 回答
321 浏览

c# - 是否可以在运行时将类注入到正在执行的程序集中?

我正在试验 CSharpCodeProvider .NET Code DOM 类,我能够编译程序集并创建在程序集中定义的实例,但我很想知道是否可以“注入”代码或更确切地说是一个类正在执行的程序集中的命名空间。

我可以通过将代码编译成程序集文件来解决这个问题,但是如果可能的话,我想在内存中执行此操作。

0 投票
1 回答
5600 浏览

c# - Lambda编译抛出“从范围''引用的''类型的变量'',但未定义”

当我尝试编译如下所示的 lambda 时,它会抛出:

从范围“”引用了“System.Collections.Generic.IEnumerable`1[WheelEndCatalogKendo.Models.SapBasicData]”类型的变量“模型”,但未定义

我看到几个类似的帖子;但到目前为止,他们还没有让我了解我的代码问题。似乎我正在提供 lambda 变量(作为第二个参数参数)。然而,我几乎没有创作表达式树的经验。

有任何想法吗?