Trait tract_pulse::internal::Runnable  
pub trait Runnable: Debug {
    // Required method
    fn spawn(&self) -> Result<Box<dyn State>, Error>;
    // Provided method
    fn run(
        &self,
        inputs: SmallVec<[TValue; 4]>
    ) -> Result<SmallVec<[TValue; 4]>, Error> { ... }
}