Text pipes