gpt4 book ai didi

脚本语言与编程语言

转载 作者:行者123 更新时间:2023-12-03 03:58:59 25 4
gpt4 key购买 nike

谁能解释一下脚本语言和编程语言之间的区别吗?
您还可以为每个例子举一些例子吗?我在 Google 上搜索了很多,但我总是从 Stack Overflow 中找到最好的答案。

最佳答案

脚本语言是不需要显式编译步骤的编程语言。

例如,在正常情况下,您必须先编译 C 程序才能运行它。但在正常情况下,您不必在运行 JavaScript 程序之前对其进行编译。因此 JavaScript 有时被称为“脚本”语言。

这条线变得越来越模糊,因为现代硬件和现代编译技术的编译速度可以如此之快。例如,V8(Google Chrome 中的 JavaScript 引擎)也在浏览器之外广泛使用,它实际上将 JavaScript 代码即时编译为机器代码,而不是解释它。 (事实上​​,V8 是一个优化的两阶段编译器。)

另请注意,一种语言是否是“脚本”语言可能更多地与环境有关,而不是与语言有关。您没有理由不能编写 C 解释器并将其用作脚本语言(人们已经这样做了)。你也没有理由不能将 JavaScript 编译为机器代码并将其存储在可执行文件中(人们已经这样做了)。 Ruby 语言就是一个很好的例子:最初的实现完全是解释性的(一种“脚本”语言),但现在有多个编译器。

“脚本”语言的一些示例(例如,传统使用而无需显式编译步骤的语言):

  • Lua
  • JavaScript
  • VBScript 和 VBA
  • Perl

以及一小部分传统上与显式编译步骤一起使用的内容:

  • C
  • C++
  • D
  • Java (但请注意,Java 被编译为字节码,然后在运行时解释和/或重新编译)
  • 帕斯卡

...然后你就会看到像 Python 这样的东西同时存在于两个阵营中:Python 被广泛使用,无需编译步骤,但主要实现 (CPython) 通过即时编译为字节码,然后运行虚拟机中的字节码,并且它可以将该字节码写入文件(.pyc.pyo)以供使用,而无需重新编译。

这只是非常几个,如果您做一些研究,您可以发现更多。

关于脚本语言与编程语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17253545/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com