diff --git a/extra/advice/advice.factor b/extra/advice/advice.factor index a71b9590f1..6a7d46f935 100644 --- a/extra/advice/advice.factor +++ b/extra/advice/advice.factor @@ -5,8 +5,10 @@ IN: advice SYMBOLS: before after around advised ; + : advise-before ( quot name word -- ) before advise ; @@ -15,7 +17,7 @@ SYMBOLS: before after around advised ; after advise ; : advise-around ( quot name word -- ) - [ \ coterminate suffix cocreate ] 2dip + [ \ coterminate suffix ] 2dip around advise ; : get-advice ( word type -- seq ) @@ -28,7 +30,7 @@ SYMBOLS: before after around advised ; after get-advice [ call ] each ; : call-around ( main word -- ) - around get-advice tuck + around get-advice [ cocreate ] map tuck [ [ coresume ] each ] [ call ] [ reverse [ coresume ] each ] tri* ; : remove-advice ( name word loc -- )