diff --git a/uiop/run-program.lisp b/uiop/run-program.lisp
index 143e20f..049d692 100644
--- a/uiop/run-program.lisp
+++ b/uiop/run-program.lisp
@@ -309,16 +309,14 @@ EXTERNAL-FORMAT for the stream passed to the OUTPUT processor."
                            ;; On ClozureCL for Windows, we assume you are using
                            ;; r15398 or later in 1.9 or later,
                            ;; so that bug 858 is fixed http://trac.clozure.com/ccl/ticket/858
-                           #+clozure (cons "cmd" (strcat "/c " command))
                            ;; NB: On other Windows implementations, this is utterly bogus
                            ;; except in the most trivial cases where no quoting is needed.
                            ;; Use at your own risk.
-                           #-(or allegro clozure) (list "cmd" "/c" command))
+                           #-allegro (list "cmd" "/c" command))
                           #+os-windows
                           (list
-                           #+(or allegro clozure) (escape-windows-command command)
-                           #-(or allegro clozure) command)))
-                      #+(and clozure os-windows) (command (list command))
+                           #+allegro (escape-windows-command command)
+                           #-allegro command)))
                       (process*
                         (multiple-value-list
                          #+allegro
