Arc Cross Reference

posmatch

[procedure] posmatch pat seq (o start 0)

(def posmatch (pat seq (o start 0))
  (catch
    (if (isa pat 'fn)
        (for i start (- (len seq) 1)
          (when (pat (seq i)) (throw i)))
        (for i start (- (len seq) (- (len pat) 2))
          (when (headmatch pat seq i) (throw i))))
    nil))