diff --git a/basis/compiler/cfg/dce/dce.factor b/basis/compiler/cfg/dce/dce.factor
index 1a5d264891..28c75ec18a 100644
--- a/basis/compiler/cfg/dce/dce.factor
+++ b/basis/compiler/cfg/dce/dce.factor
@@ -59,11 +59,9 @@ GENERIC: compute-live-vregs ( insn -- )
 
 : (record-live) ( vregs -- )
     [
-        dup live-vreg? [ drop ] [
-            [ live-vregs get adjoin ]
-            [ liveness-graph get at (record-live) ]
-            bi
-        ] if
+        dup live-vregs get ?adjoin [
+            liveness-graph get at (record-live)
+        ] [ drop ] if
     ] each ;
 
 : record-live ( insn -- )
diff --git a/basis/compiler/cfg/rpo/rpo.factor b/basis/compiler/cfg/rpo/rpo.factor
index ec89853b7b..877f7770a7 100644
--- a/basis/compiler/cfg/rpo/rpo.factor
+++ b/basis/compiler/cfg/rpo/rpo.factor
@@ -6,13 +6,12 @@ FROM: namespaces => set ;
 IN: compiler.cfg.rpo
 
 : post-order-traversal ( visited bb -- visited )
-    dup pick in? [ drop ] [
-        dup pick adjoin
+    dup pick ?adjoin [
         [
             successors>> <reversed>
             [ post-order-traversal ] each
         ] [ , ] bi
-    ] if ; inline recursive
+    ] [ drop ] if ; inline recursive
 
 : number-blocks ( blocks -- )
     dup length iota <reversed>
diff --git a/basis/compiler/cfg/ssa/construction/construction.factor b/basis/compiler/cfg/ssa/construction/construction.factor
index e395f52e22..bec0971e03 100644
--- a/basis/compiler/cfg/ssa/construction/construction.factor
+++ b/basis/compiler/cfg/ssa/construction/construction.factor
@@ -87,9 +87,9 @@ SYMBOLS: stacks pushed ;
 
 : gen-name ( vreg -- vreg' )
     [ next-vreg dup ] dip
-    dup pushed get 2dup in?
-    [ 2drop stacks get at set-last ]
-    [ adjoin stacks get push-at ]
+    dup pushed get ?adjoin
+    [ stacks get push-at ]
+    [ stacks get at set-last ]
     if ;
 
 : (top-name) ( vreg -- vreg' )
diff --git a/basis/compiler/cfg/utilities/utilities.factor b/basis/compiler/cfg/utilities/utilities.factor
index 9fdd771f61..1e6c733d54 100644
--- a/basis/compiler/cfg/utilities/utilities.factor
+++ b/basis/compiler/cfg/utilities/utilities.factor
@@ -19,12 +19,11 @@ IN: compiler.cfg.utilities
     } 1&& ;
 
 : (skip-empty-blocks) ( visited bb -- visited bb' )
-    dup pick in? [
-        dup empty-block? [
-            dup pick adjoin
+    dup empty-block? [
+        dup pick ?adjoin [
             successors>> first (skip-empty-blocks)
         ] when
-    ] unless ; inline recursive
+    ] when ; inline recursive
 
 : skip-empty-blocks ( bb -- bb' )
     [ HS{ } clone ] dip (skip-empty-blocks) nip ;