问题标签 [scripting-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 回答
315 浏览

programming-languages - 寻找一种同时支持解释和本机编译模式的新语言

我目前使用 Perl、Python、C#、C、C++、Java 和其他一些语言进行编程,并且我正在寻找一种新的语言,以便在进行个人项目时用作主要语言。

我目前的标准是:

  • 可以作为解释语言运行(即无需等待编译即可运行);
  • 可以编译为本机代码;
  • 是强类型的(即使是可选的);
  • 支持你想调用的宏/模板/代码变形/wtf;
  • 有相当数量的图书馆,或者很容易访问它;

想法?建议?

0 投票
2 回答
1084 浏览

.net - fsi.exe 程序集:有人知道如何嵌入它吗?

长期读者,第一个问题。fsi.exe 是一个 .NET 可执行文件,因此包含它自己的程序集,其中包含所有美味的方法和 fsi 用来执行 F# 脚本的东西。

查看 .NET Reflector 中的程序集(选择你的类,但 Shell 是最好的例子)揭示了一堆看起来像修饰的 C++ 函数的垃圾 * 名称(例如,来自 Dependency Walker)。顺便说一句,有点题外话,F# 程序集以几乎相同的方式编译,有很多垃圾*名称,这让我认为 fsi.exe 是用 F# 编写的,也许是作为可用性证明?

无论如何,这是我的问题:有没有人研究过 fsi.exe 并想出了如何将它嵌入到 .NET 应用程序中?因为我想使用 F# 作为脚本语言,但是程序编译为(惊喜)程序,并且脚本必须由 fsi.exe 执行,这在我的域中是不可接受的(我需要一个持久的 VM)。我不希望获得有关使用 fsi.exe 的操作指南,但我很想知道是否有人玩过它,如果有,您对它的工作原理有何发现?

谢谢你的时间。

* 垃圾一目了然。显然,出于某种特殊原因,它们以这种特殊方式格式化,这在引擎盖下。

0 投票
3 回答
854 浏览

validation - 脚本语言的代码验证工具

我花了大约两个小时试图了解为什么我在 Facebook 应用程序中包含的 JavaScript 文件在我查看页面的源代码时没有显示。然后猜猜问题出在哪里?我忘记添加语句的最后一个右括号,并且由于 Facebook 在添加脚本之前会处理脚本(以避免在 Facebook 平台中出现意外错误),因此它没有附加此脚本,因为它有语法错误!也就是说,由于缺少括号,没有添加整个 JavaScript!

因此,为了将来节省时间,我想为我正在使用的脚本语言获取一些语法验证工具:PHP、Python、JavaScript、MySQL(虽然不是真正的脚本语言)。有人可以帮我吗?如果它们是 Vim 插件那就太好了,因为我大量使用它。

随意分享其他编程语言的验证工具,我不想只为我保留这篇文章。

0 投票
7 回答
2986 浏览

scripting - 除了 JavaScript 和 PHP 之外,是否有任何类似 C(在语法上)的脚本语言?

我正在寻找具有 C/C++/C#/Java- 的通用用途(考虑到 PHP 实际上是制作的并且最初意味着(我知道它们有时会以不同的方式使用)用于服务器端 Web 和用于客户端 Web 的 JavaScript)像语法。你知道这样的吗?

0 投票
2 回答
204 浏览

oop - 面向对象的类型系统可以由具有面向对象类型系统的语言实现吗?

假设您有一个虚构的类型系统,用于用 C++ 编写的虚构脚本语言(例如),并且脚本语言中的每个类型(和对象)在底层实现语言中都有对应的类型(和对象)。这个假想的类型系统中的基类是一个名为 Object 的类,所有其他类都必须派生自这个类。现在,您有另一个名为 HashTable 的类,它是所有变量存储的基础(我可能说错了):命名空间通过 HashTables 实现(将一个对象与另一个对象关联),全局变量通过 HashTables 存储,并且,问题的关键,实例变量也存储在HashTables中。

实例变量是这样的,每个对象都有一个 HashTable 来存储它的实例变量。但是,HashTable 必然是从 Object 派生的,因此每个 HashTable 都有一个 HashTable 来存储其实例变量。每个 HashTable 的每个 HashTable 都有一个 HashTable,以此类推。

我的问题是,这种类型系统可以在底层 C++ 代码中以面向对象的方式实现吗?如果不采取任何预防措施,程序将进入一个无限循环并在仅仅实例化对象时导致堆栈溢出,因为它将实例化一个哈希表,该哈希表将调用其父对象的构造函数,这将实例化一个哈希表......

对于这个设计缺陷,是否有任何可行的解决方法,不涉及破坏所需的 OO 设计(每种类型在底层代码中都有其推论类型)?

请原谅这篇文章中的语法,英语不是我的第一语言,我可能无法以可理解的方式解释某些内容。

0 投票
1 回答
2705 浏览

arrays - 将数组作为值推送或添加到 actionscript 3.0 中的多维数组中

我在将一个数组添加到另一个数组以创建多维数组时遇到了一些麻烦。

代码如下所示:

我正在寻找一种将 slideDataArray 放入“插槽”或​​ slideShowDataArray 值的方法,以便最终可以将 slideShowDataArray 作为参数传递给另一个函数。

截至目前,最后一个 slideDataArray 在 slideShowDataArray 中出现了 11 次(循环运行 11 次),并且代码的编写方式 slideDataArray 在循环的每次迭代中都是唯一的。

任何帮助表示赞赏。

提前致谢...

0 投票
1 回答
1073 浏览

java - JSR-223 与 JSR-241 - 脚本语言

JSR-223JSR-241之间的主要区别是什么?

如果我理解正确:

  1. JSR -223:在 Java 中引入脚本语言引擎,就是这样!您可以自由使用您想要的任何脚本语言,例如:Groovy、Mozilla Rhino、PHP、Jython、Python 等。J2EE 的默认实现支持 JavaScript 作为脚本引擎,但您可以添加任何您喜欢的脚本语言。因此,这只是将用 Java 语言编写的类与用脚本语言编写的一段代码连接起来(反之亦然)。这种集成的唯一好处是,与用 Java 编写相同的程序相比,脚本语言在编写程序时提供了简单性。

  2. JSR 241:这是 JSR-223 的扩展,强调采用 Groovy 作为脚本语言,即如果您打算在 Java 应用程序(Web 或 Dekstop 应用程序)中使用脚本语言,请使用 Groovy.. 其他的,因为 Groovy 是更多类似 Java 和其他脚本语言(如 Jython、Python、JavaScript 等)已被采用和修改以适应 Java,但自然选择是 Groovy。

能否请您对此多说一些,我的理解正确吗?

0 投票
5 回答
786 浏览

windows - Windows 和 Unix 上的脚本语言

我需要编写一个处理文件的脚本。它的目的是在二进制上下文中打开和复制文件中的某些部分。问题是我需要在 Windows 和 Unix 上运行它。

是否有可以同时处理这两种操作系统的脚本语言?

0 投票
8 回答
3674 浏览

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

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

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

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

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

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

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

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

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

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

有任何想法吗?

0 投票
2 回答
686 浏览

java - 创建用于在 excel 中导入文本文件的脚本的最佳解决方案是什么?

我想知道用任何语言创建脚本以在 excel 中导入文本文件的最佳方法是什么。我曾经用java编写代码,但我有兴趣学习任何其他语言。

目标是在不打开 excel 的情况下在 excel 中导入 txt 文件,例如使用 java 或 vb ...

我有一个文件夹,每天都会下载一个文本文件,我想将它导入到 excel 中,我可以检查图表。

我试图在java中导入它,但似乎不可能。

感谢您的帮助。