 ! Copyright (C) 2010 Erik Charlebois.
 ! See http:// factorcode.org/license.txt for BSD license.
 USING: accessors alien alien.c-types alien.strings alien.syntax
-classes classes.struct combinators io.encodings.ascii
-io.encodings.string kernel literals make math sequences
-specialized-arrays typed fry io.mmap formatting locals ;
+classes classes.struct combinators combinators.short-circuit
+io.encodings.ascii io.encodings.string kernel literals make
+math sequences specialized-arrays typed fry io.mmap formatting
+locals splitting ;
 FROM: alien.c-types => short ;
 IN: macho
 

            ] curry each
        ] each
    ] with-mapped-macho ;

: symbol-name ( symbol string-table -- name )
    [ n_strx>> ] dip <displaced-alien> ascii alien>string ;

: c-symbol-name ( symbol string-table -- name )
    symbol-name "_" ?head drop ;

: with-mapped-macho ( path quot -- )
    '[
        address>> macho-header @
