anchor.diff:              (single time - single life.StartTime) / single life.LifeTime
   
           /// The liveness of the instance.
  +        /// OPTIMIZATION: avoiding use of Liveness type to avoid its constructor calls.
           static member getLiveness (time : int64) life =
               let localTime = time - life.StartTime
  -            if life.LifeTime < localTime then Live else Dead
  +            life.LifeTime < localTime
   
       /// Describes the body of an instance value.
       type [<NoEquality; NoComparison; Struct>] Body =
  
positive.code: 
          static member (+) (output, output2) =
              match (output, output2) with
              | (NoOutput, NoOutput) -> NoOutput
              | (_, NoOutput) -> output
              | (NoOutput, _) -> output2
              | (_, _) -> Outputs [|output; output2|]
  
negative.code: 
      /// The default particle emitter.
      type [<NoEquality; NoComparison>] Emitter<'a when 'a :> Particle and 'a : struct> =
          { StartTime : int64
            LifeTimeOpt : int64 option
            ParticleLifeTimeMax : int64
            mutable ParticleIndex : int // operates as a ring-buffer
            Particles : 'a array // operates as a ring-buffer
            Initializer : int64 -> Constraint -> 'a Emitter -> 'a
            Behaviors : Behaviors
            Constraint : Constraint
            Body : Body
            Rate : single
            Id : Guid }
  
          static member private emit time constrain emitter =
              let particleIndex = if emitter.ParticleIndex >= emitter.Particles.Length then 0 else inc emitter.ParticleIndex
  