diff --git a/core/assocs/assocs-docs.factor b/core/assocs/assocs-docs.factor index ed82532d0c..716ac64c9b 100755 --- a/core/assocs/assocs-docs.factor +++ b/core/assocs/assocs-docs.factor @@ -268,13 +268,13 @@ HELP: remove-all { $side-effects "assoc" } ; HELP: substitute-here -{ $values { "assoc" assoc } { "seq" "a mutable sequence" } } +{ $values { "seq" "a mutable sequence" } { "assoc" assoc } } { $description "Replaces elements of " { $snippet "seq" } " which appear as keys in " { $snippet "assoc" } " with the corresponding values, acting as the identity on all other elements." } { $errors "Throws an error if " { $snippet "assoc" } " contains values whose types are not permissible in " { $snippet "seq" } "." } { $side-effects "seq" } ; HELP: substitute -{ $values { "assoc" assoc } { "seq" sequence } { "seq" sequence } } +{ $values { "seq" sequence } { "assoc" assoc } { "newseq" sequence } } { $description "Creates a new sequence where elements of " { $snippet "seq" } " which appear as keys in " { $snippet "assoc" } " are replaced by the corresponding values, and all other elements are unchanged." } ; HELP: cache diff --git a/core/optimizer/backend/backend.factor b/core/optimizer/backend/backend.factor index d13df9e70c..1703bea5d4 100755 --- a/core/optimizer/backend/backend.factor +++ b/core/optimizer/backend/backend.factor @@ -37,10 +37,10 @@ GENERIC: optimize-node* ( node -- node/t changed? ) over assoc-empty? [ 2drop ] [ - 2dup node-in-d substitute-here - 2dup node-in-r substitute-here - 2dup node-out-d substitute-here - node-out-r substitute-here + 2dup node-in-d swap substitute-here + 2dup node-in-r swap substitute-here + 2dup node-out-d swap substitute-here + node-out-r swap substitute-here ] if ; : perform-substitutions ( node -- )