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

performance - 速度比较 - 解释语言中的程序与 OO

在 PHP 和 JavaScript 等解释性编程语言中,使用面向对象的方法优于过程方法的影响是什么?

具体来说,我正在寻找的是在创建 Web 应用程序并在过程和面向对象方法之间进行选择时要考虑的事项清单,不仅可以优化速度,还可以优化可维护性。如果您知道任何进一步探讨此问题的文章,引用的研究和测试用例也会有所帮助。

底线:在解释语言中使用 OO 与程序时,性能的真正影响有多大(如果有的话)?

0 投票
4 回答
1139 浏览

performance - 解释语言——利用解释器背后的编译语言

如果那里有任何语言设计者(或者只是知道的人),我很好奇为解释语言创建标准库的方法。具体来说,什么似乎是最好的方法?在解释语言中定义标准函数/方法,或者在编写解释器的编译语言中执行这些调用的处理?

让我想到这一点的是关于 Python 中类似 stripslashes() 的函数的 SO 问题。我的第一个想法是“为什么不定义自己的,只在需要时调用它”,但它提出了一个问题:对于这样的函数,让解释语言处理该开销是否更可取,还是更好编写扩展并利用解释器背后的编译语言?

0 投票
3 回答
2368 浏览

python - GPL 程序的专有插件:解释语言呢?

我正在用 Python 开发一个 GPL 许可的应用程序,需要知道 GPL 是否允许我的程序使用专有插件。这是FSF在这个问题上必须说的:

如果在 GPL 下发布的程序使用插件,插件的许可证有什么要求?

这取决于程序如何调用其插件。如果程序使用fork和exec调用插件,那么插件是独立的程序,所以主程序的license对它们没有要求。

如果程序动态链接插件,它们之间进行函数调用并共享数据结构,我们认为它们形成了一个单独的程序,必须将其视为主程序和插件的扩展。这意味着插件必须在 GPL 或与 GPL 兼容的自由软件许可下发布,并且在分发这些插件时必须遵守 GPL 的条款。

如果程序动态链接插件,但它们之间的通信仅限于通过一些选项调用插件的'main'函数并等待它返回,这是一种边缘情况。

fork/exec 和动态链接之间的区别,除了有点人为之外,并没有延续到解释语言:Python/Perl/Ruby 插件怎么样,它通过importor加载execfile

(编辑:我理解为什么 fork/exec 和动态链接之间的区别,但似乎有人想要遵守 GPL 但违背“精神”——我不——可以只使用 fork/exec 和进程间通信几乎可以做任何事情)。

最好的解决方案是在我的许可证中添加一个例外,以明确允许使用专有插件,但我无法这样做,因为我使用的是 GPL 的Qt / PyQt 。

0 投票
6 回答
531 浏览

compiled - 模块化和平台独立性的最佳方法是什么?

我希望这个问题不会像起初看起来那样广泛。我在<sarcasm>大量</sarcasm>的业余时间设计一个软件应用程序。我希望它既是跨平台的又是模块化的。在这一点上,因为我仍处于计划阶段,我几乎可以选择任何语言和工具集。

这让事情变得更难,而不是更容易,因为似乎有很多方法可以实现这两个目标(模块化、平台不可知论)。

我的基本前提是安全性、数据存储、与操作系统的交互以及配置都应该由“容器”应用程序处理——但大多数其他功能将通过插件模块提供。如果我必须在高层次上描述它(不完全放弃我的想法),它将是一个可以完成许多不同工作的单个应用程序,所有工作都致力于同一个目标(有很多不同的事情要做,但所有数据必须交互并且高度可用)。

这不是一个新想法,也不是特别奇特。然而,我发现自己纠结的不是如何去做(我能想到很多方法),而是哪种方法最好。

例如,我知道 Eclipse 实际上体现了我所描述的内容,但我发现一般的 Java 应用程序(Eclipse 也不例外)对于我的需要来说太大而且太慢。用 Python 和 Ruby 编写的桌面应用程序同上(它们都是优秀的语言!)

我不介意将不同平台的代码库重新编译为本机可执行文件。然而,C 和 C++ 有自己的一系列问题。

作为 C# 开发人员,我偏爱托管代码。但我一点也不在 Mono 上出售,但(我可以相信)。

有没有人有任何想法/经验/特别喜欢的框架可以分享?

0 投票
2 回答
340 浏览

build-process - 你能用 PHP 脚本或解释语言“构建”吗?

如果我错了,请纠正我,但“构建”是“编译”,并不是每种语言都能编译。持续集成涉及构建组件以查看它们是否在单元测试之外继续工作,我可能过于简单化了。但是如果您的项目涉及一种无法编译的语言,您如何执行夜间构建或使用持续集成技术?

0 投票
15 回答
11260 浏览

interpreted-language - 为什么这么多网络语言是解释而不是编译的?

为什么像 C 这样的语言最终没有被用于 Web 开发?编译后的速度提升肯定对重负载站点有用吗?

0 投票
10 回答
1853 浏览

interpreted-language - 怎么可能出售用解释语言编写的代码?

在我看来,如果您使用解释性语言编写软件,那么销售软件肯定很困难,因为购买它的任何人都可以轻松编辑/更改/转售它。

你如何解决这个问题?我有几个 PHP 应用程序我不愿意卖给人们,因为他们似乎太容易更改/阅读/编辑/出售我制作的内容。

0 投票
3 回答
839 浏览

c# - C# 解释语言

我正在寻找用 C# 编写解释型语言,我应该从哪里开始?我知道如何使用有趣的字符串解析来做到这一点,但正确的方法是什么?

0 投票
2 回答
1441 浏览

vm-implementation - 简单的解释语言设计与实现

我需要一些资源来实现一个简单的虚拟机和解释语言。实用的东西是最有用的。我看过虚拟机实现这本书,发现它很旧,并不代表我今天看到的虚拟机。此外,如果有人知道一种相当简单的语言,那也很好。

0 投票
9 回答
8854 浏览

compiler-construction - 为什么解释的语言大多是鸭式的,而编译的语言有强类型?

我只是不知道,这有什么技术原因吗?为弱类型的语言实现编译器是否更难?它是什么?