首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >静态类型和静态调度与动态类型和动态调度之间是否存在1:1的映射?

静态类型和静态调度与动态类型和动态调度之间是否存在1:1的映射?
EN

Stack Overflow用户
提问于 2022-07-10 23:55:11
回答 1查看 73关注 0票数 1

上下文:,我正在学习朱莉娅,并试图找出多个分派。我理解从单个动态调度到多个动态调度的概念飞跃,但我试图确定单个动态调度。

问题:是以下1:1映射真:

  • 在每种具有动态类型的语言中,在每种具有静态类型的语言中都有动态调度
  • ,还有静态调度

我想不出你想要什么情况

使用动态分派的

  • 静态类型(因为变量不会是动态的,所以为什么有动态
  • 相反的情况:使用静态分派的动态类型(如果变量更改类型,您不希望在运行时类型上调用函数吗?)
EN

回答 1

Stack Overflow用户

发布于 2022-07-15 08:01:25

第一点是错误的:

静态类型化语言中更重要的继承点之一是允许在调用基对象时进行动态分配,但实际上使用的是来自后代的函数。

第二点有点哲理性:

如果您只知道在运行时(即动态的)某物的类型,那么对它上的方法的任何调用都只能在运行时解析。见鬼,在运行时获得符号之前,您甚至不知道符号是否是函数,如果可以获得不同类型的函数(如条件函数),则无法预先知道调用符号将做什么。

如果您认为JIT编译器是流程的一部分,那么从技术上说,编译器编译了所有已知的代码行,静态地确定了要调用的函数,现在可以使用静态分派运行它。

就我个人而言,我仍然会称之为“动态”,从某种意义上说,您必须运行您的解释器才能到达这一行,但这更多地是基于意见的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72932620

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档