
【计】 attribute evaluation rule
belong to; category; dependents; genus; subordinate to
【医】 genera; genus; group; herd
evaluation
regulation; rule; formulae; order; rope
【计】 rule
【化】 regulation; rule
【医】 regulation; rule
【经】 propriety; regulations; rule
在汉英词典视角下,“属性求值规则”(Attribute Evaluation Rules)是编程语言和计算理论中的核心概念,指在语法分析或程序执行过程中,确定符号属性值的逻辑规范。其核心是定义如何根据语法结构的上下文计算关联数据(即属性)。以下是分层解析:
属性(Attribute)
指与语法符号(如变量、表达式)关联的附加数据,例如数据类型、值、作用域等。
英文对照:Attribute/Property(如 "Type attribute" 类型属性)。
求值(Evaluation)
指通过计算或推导确定属性值的过程。
英文对照:Evaluation(如 "Lazy evaluation" 惰性求值)。
规则(Rules)
定义属性间依赖关系和计算逻辑的约束条件。
英文对照:Rule/Constraint(如 "Dependency rule" 依赖规则)。
属性求值规则常见于编译器的语义分析阶段,用于检查程序逻辑合法性。例如:
典型应用:
# 示例:表达式求值规则
expr → expr + term { expr.value = expr.value + term.value }
term → number{ term.value = number.value }
此处规则明确定义了加法运算的值计算逻辑。
编译原理经典教材
Aho等人在《Compilers: Principles, Techniques, and Tools》(龙书)中定义属性求值规则为:
“A rule that computes the value of an attribute at a node from attributes at neighboring nodes.”
(通过相邻节点属性计算某节点属性值的规则)
来源:第2章“Syntax-Directed Translation”
编程语言规范
Python官方文档强调求值顺序对程序行为的影响:
“Evaluation order is determined by precedence and associativity rules.”
来源:Python Language Reference, §6.15
形式化方法研究
属性文法(Attribute Grammars)的提出者Donald Knuth指出:
“Evaluation rules must ensure non-circular dependencies to guarantee computability.”
(规则需避免循环依赖以保证可计算性)
来源:论文《The Genesis of Attribute Grammars》
参考文献
Aho A V, Lam M S, Sethi R, et al. Compilers: Principles, Techniques, and Tools. Pearson, 2006.
Python Software Foundation. "6. Expressions." Python 3.12 Documentation.
Knuth D E. "The genesis of attribute grammars." International Conference on Attribute Grammars, 1990.
属性求值规则是指在不同领域(如编程语言编译、CSS样式计算)中,确定属性最终值的逻辑和方法。根据上下文不同,其含义有所差异,以下是两类典型场景的解释:
在编译原理中,属性求值规则用于描述语法树节点属性的计算方式,主要分为两类:
综合属性(Synthesized Attribute)
自底向上计算,子节点的属性值决定父节点的属性值。例如:表达式求值时,子表达式的结果传递给父节点进行运算。
继承属性(Inherited Attribute)
自顶向下计算,父节点或兄弟节点的属性值决定当前节点的属性值。例如:变量作用域的传递,父节点的作用域信息传递给子节点。
CSS属性值的计算分为三个阶段,需按顺序执行:
确定指定值(Specified Value)
color: red
)。background-color
默认为透明)。转换为计算值(Computed Value)
em
)转换为绝对值。例如:width: 50%
需根据父容器宽度计算具体像素。auto
、inherit
)为实际可用的中间值。生成实际值(Actual Value)
12.5px
,但浏览器可能取整为 12px
渲染。如果需要更具体的领域示例或扩展解释,可进一步说明上下文。
按钮阴影阿息胶半圆钢条扁平石表驱动编译程序大故障电解质导体电源拨换替续器动物样体端口级网络房室间期分子序数覆盖地址改变口令根管一次充填共渔权国务大臣骨突后挡板交作式图形输入旧货商快速存取磁盘子系统贫民的破坏性试验脐带刀生成任务套利人填料压板脱下