1.4. signal

A signal is a value that carries no information. It typically indicates completion of a call, when there is no other meaningful value to return. It is analogous to void in Java or () in ML.

1.4.1. Syntax

[52]SignalLiteral::= signal  

1.4.2. Operations

Notable signal operations include:

  • Publish a signal if an expression is true: Ift

  • Publish a signal if an expression is false: Iff

  • Publish some number of signals simultaneously: signals

1.4.3. Type

The signal value has type Signal.

1.4.4. Java calls

Orc signals don't correspond to any Java value, so if a signal is passed to Java code, it will be as an java.lang.Object of a type not specified here. A return of type void from Java code is converted into a signal return value.

1.4.5. Related Links

Related Tutorial Sections