正如标题所示,我想知道这两个编程概念之间的关系是什么。某种类型的系统(静态/动态)是否适合某种类型的范围(词汇/动态),还是这些独立的语言选择?
答案 0 :(得分:2)
静态类型对于动态作用域不能很好地工作,因为变量绑定在运行时被解析。这是可能的,但它会很笨拙,因为类型系统必须以某种方式键入自由变量,可能是通过检查绑定的变量。基本上,您无法声明两个名称相同但类型不同的变量。强弱打字也将发挥作用。我仍然在思考静态的,弱类型的,动态范围的语言可能采取什么形式,假设它是可能的。
词法范围与静态和动态类型配对。