# KOS_OP_ATTR - **Style**: CONST. Arg = constant pool index of attribute name (post-compile). - **Stack**: `[..., obj] → [..., value]`. Get attribute; the value replaces the object. - **Invariants**: TOS is the object. Name in constant pool. - **Compiler form:** Pre-compile arg = attribute name (string); post-compile arg = pool index. **Example:** Get obj.name. Pool: 0 = "name". | index | opcode | arg | arg view | comment | |------:|--------|-----|------------|---------| | 0 | VAR | 0 | 0 ('obj') | stack: [..., obj] | | 1 | ATTR | 1 | 1 ('name') | stack: [..., value] | | 2 | RETURN | 1 | 1 | |