feat: add Supervisor and GenServer integration [2/2]#103
Closed
unbalancedparentheses wants to merge 2 commits intolambdaclass:mainfrom
Closed
feat: add Supervisor and GenServer integration [2/2]#103unbalancedparentheses wants to merge 2 commits intolambdaclass:mainfrom
unbalancedparentheses wants to merge 2 commits intolambdaclass:mainfrom
Conversation
… [1/3] Add foundational types for process management: - Pid: unique process identifiers - Link: process linking and monitoring types (MonitorRef, SystemMessage) - ProcessTable: global table for tracking links and monitors - Registry: name-based process lookup These types form the foundation for Erlang-style process management. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add supervision trees and integrate process primitives with GenServer: **Supervisor** - Supervisor with OneForOne, OneForAll, RestForOne strategies - DynamicSupervisor for runtime child management - ChildSpec with Permanent, Transient, Temporary restart types - Restart intensity tracking to prevent restart storms **GenServer Integration** - GenServer now registers with process table on start - GenServerHandle implements HasPid trait - Added link(), unlink(), monitor(), demonitor() methods - Added register() and unregister() for name-based lookup - Support for trap_exit to receive EXIT messages via handle_info **Examples** - Added supervisor example demonstrating Supervisor usage This builds on PR lambdaclass#102 (process infrastructure). 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This was referenced Jan 9, 2026
2 tasks
Contributor
Author
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add supervision trees and integrate process primitives with GenServer:
Supervisor
Supervisorwith OneForOne, OneForAll, RestForOne restart strategiesDynamicSupervisorfor runtime child managementChildSpecwith Permanent, Transient, Temporary restart typesGenServer Integration
GenServerHandleimplementsHasPidtraitlink(),unlink(),monitor(),demonitor()methodsregister()andunregister()for name-based lookuptrap_exitto receive EXIT messages viahandle_infoExamples
Dependencies
Merge order: #102 → This PR → #104 (TBD)
Test plan
--test-threads=1to avoid registry race conditions🤖 Generated with Claude Code