Epic: make Common Lisp and JavaScript actors first-class peers behind one host API #57
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
priority:P1
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
nsaspy/quasar#57
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Goal
Quasar must support both Common Lisp actors and JavaScript actors as first-class peers.
Neither language is secondary. Both actor runtimes receive the same host capabilities through a language-neutral contract.
Core invariant
Actor abilities are determined by principal/capability policy, not implementation language.
Do not create separate security models such as
js_actorvslisp_actorauthority.Language-neutral Actor Host API
Define one versioned host surface covering at least:
Both runtimes must map to the same semantic operations and typed errors.
Common Lisp actors
JavaScript actors
Spawn authority
All actor spawns, including child/recursive spawns from either language, must cross the same authoritative host gate. This is required for per-user quotas and resource policy.
Relationship to existing work
Build on #2's Common Lisp control-plane migration and current principal/capability model rather than creating a parallel runtime authority.
TDD acceptance
Tests first should prove:
Non-goals
init.lisp/operator-level privilege for Common Lisp actors