语言本身的编译型和解释型的本质区别是什么

2018-08-02 10:52:37 +08:00
 vevlins

很多语言提供了编译器和解释器两种,语言本身有什么编译型和解释型的区别吗?

动态数据类型算是区别吗?还是什么其他特性?

1698 次点击
所在节点    前端开发
4 条回复
yanaraika
2018-08-02 10:59:40 +08:00
语言本身一般没有,但有些特性(例如说 duck typing/动态类型)不太适合编译器的高性能实现。
kingwl
2018-08-02 11:01:18 +08:00
编译到 IR/字节码算不算编译型, 解释 IR/字节码算不算解释型
zhy0216
2018-08-02 11:04:28 +08:00
编译就是把一种语言翻译成另一种语言 和动态类型静态类型的分类是没有关系的
举个例子 python 其实也有编译的步骤 把 python 代码编程成 python 虚拟机的字节码(就是 pyc 文件)
静态类型也有解释器的比如 haskell 什么的

你可能还会看到强类型和弱类型的分类 具体是指类型是不是会隐形转换 和动态类型静态类型的分类也是没有关系的
比如 C 就是静态弱类型
vmebeh
2018-08-02 11:49:16 +08:00

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/476172

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX