from the art of unix programming