anchor.diff:          State: 'T
           PreviousState: 'T
           LastTime: float
  +        LastRenderTime: float
           UpdateTime: float
  -        UpdateAccumulator: float
  +        Accumulator: float
           RenderInterval: float }
   
       let start (state: 'T) (update: float -> float -> 'T -> 'T) (render: float -> 'T -> 'T -> unit) =
  
positive.code:                             State = state
                              PreviousState = gl.State
                              UpdateTime = gl.UpdateTime + targetUpdateInterval
                              UpdateAccumulator = gl.UpdateAccumulator - targetUpdateInterval
                              RenderInterval = renderInterval }
                  else
                      gl
  
              let processRender gl =
                  render (gl.UpdateAccumulator / targetUpdateInterval) gl.PreviousState gl.State                
  
                  { gl with 
                      LastTime = currentTime }
                           
              { gl with UpdateAccumulator = updateAcc }
              |> processUpdate
              |> processRender
              |> loop
  
negative.code:             { State = state
                PreviousState = state
                LastTime = 0.
                LastRenderTime = 0.
                UpdateTime = 0.
                Accumulator = 0.
                RenderInterval = 0. }
  
  [<EntryPoint>]
  