"->"はthreading macroといい、Hylangを特徴付ける記法の一つです。
シェルスクリプト のPipeのような感じで記述できるので、
Lisp系特有の地獄の括弧ネストを幾分見通しよくすることができます。
実際のところ
伝統的書き方だと
(setv *names* (with [f (open "names.txt")] (sorted (.split "," (.replace "\"" "" (.strip (.read f)))))))
これがhreading macroであれば以下のように
(setv *names* (with [f (open "names.txt")] (-> (.read f) (.strip) (.replace "\"" "") (.split ",") (sorted))))
パッと見では解釈が難しいこんな式も
(import [sh [cat grep wc]]) (wc (grep (cat "/usr/share/dict/words") "-E" "^hy") "-l")
これが
(import [sh [cat grep wc]]) => (-> (cat "/usr/share/dict/words") (grep "-E" "^hy") (wc "-l"))