为什么语言通常是静态类型或动态类型(不是两者)?

时间:2015-05-28 15:27:07

标签: dynamic static

我不明白这一点。我理解每个的优点和缺点,但为什么像Python这样的语言不允许你自己在初始化和函数参数类型中指定变量类型,并在你希望时返回类型,这样解释器就不会浪费时间在运行时检查它,对于程序或代码的一部分,速度很重要,而不是自己做的时候?

在这种情况下,用户在不必要的语言之间进行切换似乎浪费时间,并且语言的开发人员失去了一些用户,或者没有让他们在所有项目中使用他们的语言。

1 个答案:

答案 0 :(得分:0)

使用动态类型语言初始化变量(具有特定类型)将毫无意义,因为稍后可以使用其他类型重新分配变量。并且变量的类型由其分配的变量确定。因此,使静态键入变量可选实际上不会提供任何额外的功能。

其次,函数参数的编译时检查不起作用,因为传递给它的变量类型直到运行时才能确定。函数可以编码以动态类型语言检查自己的参数类型,因此不需要为此实现另一个系统。