WIP: Implement ~> and ~>> without recursive invocations