Package-level declarations

Types

Link copied to clipboard

Primitive: If the fiber has already terminated, then answer right away; otherwise, record the current fiber as a joiner of the specified fiber, and attempt to park.

Link copied to clipboard

Primitive: Is the current able to reject an ongoing parse?

Link copied to clipboard

Primitive: Create a new atom with the given name that represents a heritable fiber variable.

Link copied to clipboard

Primitive: Create a fiber type whose result type is the specified type.

Link copied to clipboard

Primitive: Answer the currently running fiber.

Link copied to clipboard

Primitive: Schedule a new fiber to execute the specified function with the supplied arguments. The fiber will begin running after at least the specified number of milliseconds have elapsed. Answer the new fiber.

Link copied to clipboard

Primitive: Schedule a new fiber to execute the specified function with the supplied arguments. The fiber will begin running after at least the specified number of milliseconds have elapsed. Do not retain a reference to the new fiber; it is created as an orphan fiber.

Link copied to clipboard

Primitive: Answer the name of the specified fiber.

Link copied to clipboard

Primitive: Answer the result of the specified fiber.

Link copied to clipboard

Primitive: Answer the result type of the specified fiber type.

Link copied to clipboard
object P_Fork : Primitive

Primitive: Fork a new fiber to execute the specified function with the supplied arguments. Answer the new fiber.

Link copied to clipboard

Primitive: Fork a new fiber to execute the specified function with the supplied arguments. Do not retain a reference to the new fiber; it is created as an orphan fiber.

Link copied to clipboard

Primitive: Ask another fiber what it's doing. Fail if the fiber's continuation chain is empty (i.e., it is terminated).

Link copied to clipboard

Primitive: Get the priority of a fiber.

Link copied to clipboard

Primitive: Has the specified fiber produced a result yet?

Link copied to clipboard

Primitive: Has the specified fiber terminated for some reason?

Link copied to clipboard

Primitive: Does the name refer to a fiber-local variable?

Link copied to clipboard

Primitive: Has termination been requested for the current fiber? Answer the current value of the appropriate interrupt flag and simultaneously clear it.

Link copied to clipboard

Primitive: Lookup the given name (key) in the variables of the current fiber.

Link copied to clipboard

Primitive: Attempt to acquire the permit associated with the current fiber. If the permit is available, then consume it and return immediately. If the permit is not available, then park the current fiber. A fiber suspended in this fashion may be resumed only by calling P_UnparkFiber. A newly unparked fiber should always recheck the basis for its having parked, to see if it should park again. Low-level synchronization mechanisms may require the ability to spuriously unpark in order to ensure correctness.

Link copied to clipboard

Primitive: Disassociate the given name (key) from the variables of the current fiber.

Link copied to clipboard

Primitive: Request termination of the given fiber. If the fiber is currently parked or asleep, then unpark it.

Link copied to clipboard

Primitive: Set the name of the specified fiber.

Link copied to clipboard

Primitive: Set the priority of a fiber.

Link copied to clipboard

Primitive: Associate the given value with the given name (key) in the variables of the current fiber.

Link copied to clipboard

Primitive: Put the current fiber to sleep for at least the specified number of milliseconds. If the sleep time is zero (0), then return immediately. If the sleep time is too big (i.e., greater than the maximum delay supported by the operating system), then sleep forever.

Link copied to clipboard

Primitive: Terminate the current fiber.

Link copied to clipboard

Primitive: Unpark the specified fiber. If the permit associated with the fiber is available, then simply continue. If the permit is not available, then restore the permit and schedule resumption of the fiber. A newly unparked fiber should always recheck the basis for its having parked, to see if it should park again. Low-level synchronization mechanisms may require the ability to spuriously unpark in order to ensure correctness.

Link copied to clipboard

Primitive: Yield the current fiber so that higher priority fibers and senior fibers can run.