You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: Add process control operators to interpreter (getpgrp, setpgrp, getpriority, atan2)
Add compiler support for process control and math operators in the interpreter:
- getpgrp($pid) - get process group
- setpgrp($pid, $pgrp) - set process group
- getpriority($which, $who) - get process priority
- atan2($y, $x) - arctangent of y/x
Implementation:
- Opcodes already existed (GETPGRP=136, SETPGRP=137, GETPRIORITY=138, ATAN2=241)
- Execution handlers already in SlowOpcodeHandler and ScalarBinaryOpcodeHandler
- Added compilation code generation in CompileOperator.java
Test impact (with JPERL_EVAL_USE_INTERPRETER=1):
- op/lex_assign.t: 320/353 → 323/353 (+3 tests)
- Fixes tests that use these operators inside eval blocks
Remaining unsupported operators in eval blocks:
- qx, each, caller, fileno, getc, chmod, umask, unlink, utime
- rename, link, readlink, system, localtime, gmtime, pack, vec, crypt
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
0 commit comments