> Yep, you can also use the syntax for it: > > << { "foo "bar" "baz" } [ create-word-in define-symbol ] each >>
Thank you. My program needs to make a symbol every time it finds '_'. It became as follows: SYMBOL: *anonymouse-var-no* 0 *anonymouse-var-no* set-global : reset-anonymouse-var-no ( -- ) 0 *anonymouse-var-no* set-global ; : inc-anonymouse-var-no ( -- ) *anonymouse-var-no* get-global 1 + *anonymouse-var-no* set-global ; : generate-anonymouse-var ( -- var-symbol ) [ inc-anonymouse-var-no *anonymouse-var-no* get-global "ANONYMOUSE-VAR-#%d_" sprintf "factor-logica" create-word dup dup define-symbol LOGIC-VAR swap set-global ] with-compilation-unit ; : replace-anonymouse-vars ( before -- after ) { { [ dup _ = ] [ drop generate-anonymouse-var ] } { [ dup sequence? ] [ [ replace-anonymouse-vars ] map ] } { [ dup tuple? ] [ [ class-of 1array ] [ tuple-slots ] bi [ replace-anonymouse-vars ] map append >tuple ] } [ ] } cond ; -- KUSUMOTO Norio _______________________________________________ Factor-talk mailing list Factor-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/factor-talk