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

d - 使用 D 切片的 memset() 和 memcpy()

在 D 语言中,假设代码的以下语句的等价物是什么:-

我在想转换是:-

但这似乎对我不起作用,因为 dmd(v2.066.1) 给出了错误slice [8..7] exceeds array bounds [0..8]

0 投票
4 回答
322 浏览

javascript - 你如何定义一种未编译的语言

我问这个问题是因为当谈到“脚本语言”和“编程语言”这两个术语时,我看到了很多“个人偏好”。

我的问题是:

对于不能编译或直接在浏览器中运行的语言,是否有适当的技术术语?我读过的每一篇文章和我在这里搜索过的每一篇文章都没有明确说明是什么定义了一种语言的特征。

0 投票
4 回答
157 浏览

python - 编译 vs. 解释,Python 有意想不到的行为

我得到了 python 执行的意外行为。

现在,此代码不会引发 SyntaxError,因为控件永远不会进入 else 语句。在像 C++ 这样的编译语言中,它会出错。即使在 Java 中,未使用的代码也是一个错误。但不是在 Python 中。

现在在这种情况下:

print 语句引发了此处指定的 UnboundLocalError 。按照前面的逻辑,这个错误应该直到控件遇到x+=1才出现。但它确实如此,就像在任何其他编译语言中一样。

那么如何确定代码何时以编译或解释的方式运行?

编辑: 如果它被编译成字节码 .pyc 文件然后被解释。那为什么没有检测到第一个例子的 else 语句呢?

0 投票
3 回答
1177 浏览

javascript - 为什么客户端网络仍然使用解释语言?

据我所知,JavaScript 是从服务器检索 HTML 文件后在客户端执行的唯一语言。据我所知,JavaScript 无论如何都不会被编译,因此它是一种解释性语言。

随着 Web 变得越来越流行,以至于有人说移动和桌面应用程序将很快不复存在。

我们看到了像 WebGL 这样使用 JS 的新技术。

当我为 WebGL 开发时,我必须进行更多优化以达到合理的性能基准,然后我必须为 PC 或控制台做这些。

那么为什么我们仍然使用解释型客户端语言呢?是安全问题、硬件(跨平台)问题还是仅仅因为难以将如此大的变化引入 Web 架构?我知道 Web 开发人员会为即使是最小和最简单的更改(例如使用 CSS 3)而头疼,这仅仅是因为并非每个人的浏览器都是最新的。

我认为交互语言比编译语言慢吗?我说得通还是我的假设完全不正确?我绝不是 JS/web 专家,请教育我。

0 投票
1 回答
628 浏览

javascript - V8 中的 JavaScript 编译

V8 主页(Google 的 JavaScript 引擎)中,我们读到以下内容:

V8 编译并执行 JavaScript 源代码

  • 这是否意味着 JavaScript 在 V8 中不是一种解释型语言?

  • V8 是否对 JavaScript 使用即时编译方法?


编辑:还有另一个现有问题已经解决了我的第一个问题,但不是第二个问题。

0 投票
1 回答
63 浏览

language-agnostic - 常用注释标志选择的原因及历史

大多数编程语言使用//#用于单行注释(请参阅wiki)。似乎#是特别用于解释语言。根据这个问题,原因似乎是早期的 shell 之一(bourne shell)使用 '#' 作为评论并使用它(shebang)。

选择作为注释符号是否有合理的理由#(例如象征性地划掉#)?为什么我们//在许多编译语言中使用注释符号(尤其是在 C 中,因为它似乎是最早使用该符号的编译语言之一)?这有合乎逻辑的理由吗?为什么不使用#代替//,或//代替#

0 投票
2 回答
307 浏览

algorithm - 阶乘循环变为 0

我用编译语言运行了一个简单的程序,它使用两个简单的循环来计算前几个自然数的阶乘,一个外部循环来跟踪我们正在计算阶乘的数字,而内部循环通过将每个自然数从 1 乘到数字本身。该程序对第一个自然数非常有效,然后大约从第 13 个值开始计算的阶乘显然是错误的。这是由于现代计算机中实现的整数运算,我不明白为什么会出现负值。我不明白为什么,这是我在不同的计算机上测试过的,经过非常少量的阶乘计算后,它总是达到零。当然,如果第 n 个阶乘被评估为 0,

编辑:您可能想知道为什么我使用两个不同的周期而不是只使用一个......我这样做是为了强制计算机从一开始就重新计算每个阶乘,只是为了测试阶乘确实总是 0 并且它是不是偶然的。

这是我的输出:

我的程序的输出

0 投票
0 回答
43 浏览

java - 为什么 Java(和其他 JVM 语言)具有高度可移植性很重要?

我了解 JVM 的全部内容是您只需编译一次,就可以在安装了 JVM 的任何地方运行它。但那有什么意义呢?为什么不多次编译代码,为每个操作系统使用不同的编译器呢?

0 投票
0 回答
12 浏览

debugging - 跟踪已部署的 AppStore iOS 应用程序中的活动

当我按下按钮或触发任何类型的操作时,我想知道 iPhone 上的应用程序发生了什么,并查看它对我的数据做了什么。有没有办法从我的 iPhone 上的 AppStore 跟踪应用程序的活动,即使反编译应用程序是不可能的?作为一个完成了我的第一个完整应用程序的初学者应用程序开发人员,我很好奇这些东西是如何工作的。

0 投票
0 回答
186 浏览

c - 加速包含事件的 ODE 的并行求解

以下代码代表我的实际问题的简化版本:

如您所见,我尝试使用desolve一系列参数值和不同数量的事件来求解 ODE。尽管我将代码并行化并将其分布在 7 个内核上,但我的实际问题仍然需要很长时间。我已将 ODE 求解器确定为瓶颈,尤其是当事件数量变大时。

有什么想法可以加快此代码的速度吗?

我也一直在研究根据小插图R Package deSolve:Writing Code in Compiled Languages在编译代码中实现这一点。但我对 C 语言太缺乏经验,无法完全靠自己完成。

这是我到目前为止得到的:

其中,我尤其无法理解如何将n_eventsandp1_vars参数传递给 C 代码。

任何帮助或提示将不胜感激。