影响编程语言实现的因素有哪些?
影响编程语言实现的一些因素如下:
作用域 - 声明的作用域是指声明适用的程序部分。不同语言的实现机制可能不同。每种语言的作用域规则决定了如何从名称的声明中获取信息。如果过程中的名称使用在该过程的声明范围内,则该使用是局部的;否则,该使用是非局部的。根据特定语言中变量的作用域,实现存储管理。
变量的生命周期 - 变量的生命周期可能是整个程序、特定的块或函数,并且可以为值分配存储空间,因此存储管理将分别为静态存储、动态存储和全局存储。
名称绑定 - 每个变量名称的使用都必须与一个声明相关联。这通常通过符号表来完成。在大多数编译语言中,它发生在编译时。
即使名称仅在程序中声明,它也可能在运行时表示不同的对象。它可以使用术语“环境”来描述名称到存储位置的映射,并使用术语“状态”来描述存储位置到其中保存的值的映射。
赋值语句左侧和右侧标识符的含义之间存在区别。例如,在语句 i = i + 1; 中,左侧的标识符指的是 i 在存储中的位置,而 l 值和 r 值则区分了这些含义。标识符的 l 值(左值)指的是我们在赋值语句左侧使用的变量的位置,而标识符的 r 值(右值)指的是我们在赋值语句右侧使用的变量的当前值。
可读性 - 判断编程语言的一个重要标准是程序的可读性和易理解性。因此,好的编程语言必须在问题域的上下文中考虑可读性。
可写性 - 可写性是衡量语言用于为所选问题域创建程序的难易程度的指标。影响可读性的许多语言特性也影响可写性。
可移植性 - 如果语言的程序可以在不同的机器上编译和运行而无需重新编写源代码,则该语言是可移植的。可移植性或可移植性概念是许多编程项目最重要的标准之一。Ada、FORTRAN、C 和 Pascal 都有标准化的定义,允许实现可移植的应用程序。
广告