anchor.diff:  : .tasks
      cr ['] .task foreachtask ;
   
  -export .tasks .task task: activate build kill awake sleep stop pause user
  +export .tasks .task task: activate build kill awake sleep stop pause user 
  +export 's status
   end-module
  
positive.code: 
  \g Status for starting tasks
  : starting
     resume sp0 @ sp! rp0 @ rp! ['] ready status ! ;
  
  \g Stop current task
  : stop  ( -- )
  
negative.code: decimal
  
  
  \g Stop current task and transfer control to the next task
  : pause  ( -- )
     rp@  \ This item will be consumed by READY
     sp@ stacktop !  follower @ dup 's status >r ; compile-only  
  
  : resume
     postpone rdrop postpone userp postpone ! ; immediate compile-only
  
  : pass resume follower @ dup 's status >r ; compile-only
  
  \g Status for sleeping tasks
  : sleeping
     pass ; compile-only
  
  \g Status for stopped tasks
  : stopped
     pass ; compile-only
  
  \g Status for ready tasks
  : ready
  