tailcall
Replace the current procedure frame with a call to another command.
Syntax
tcl
tailcall command ?arg ...?Parameters
- command: The command to call
- arg ...: Arguments to pass to the command
Description
tailcall replaces the current procedure's stack frame with a call to the specified command. This enables tail call optimization, preventing stack overflow in deeply recursive procedures.
The command behaves as if the current procedure returned and then the specified command was called. This is more efficient than a regular call followed by return.
Examples
Tail-recursive factorial
Output
Tail-recursive sum
Output
State machine with tailcall
Output
Delegation pattern
Output
