     (eval (list
       'push.instructions.core/build-instruction
       instruction-name
+      (str "`:" instruction-name "` pops the top item from the `" pushtype
+        "` stack and the top `:integer`. The `:integer` is brought into range as an index by applying `(mod integer (count stack))`, and then the top item is _moved_ so that it is in that position in the resulting stack.")
       :tags #{:combinator}
       '(push.instructions.dsl/consume-top-of :integer :as :index)
       `(push.instructions.dsl/consume-top-of ~typename :as :shoved-item)

    (eval (list
      'push.instructions.core/build-instruction
      instruction-name
      :tags #{:comparison}
      `(push.instructions.dsl/consume-top-of ~typename :as :arg2)
      `(push.instructions.dsl/consume-top-of ~typename :as :arg1)

    (eval (list
      'push.instructions.core/build-instruction
      instruction-name
      (str "`:" instruction-name "` swaps the positions of the top two `" pushtype
        "` items.")
      :tags #{:combinator}
      `(push.instructions.dsl/consume-top-of ~typename :as :arg1)
      `(push.instructions.dsl/consume-top-of ~typename :as :arg2)
