package-test.lisp @ ab7ad2d6f641

Optimize `find-anonymous-variables`

After some profiling I found that this function was taking 4% of the total
runtime just on its own.  The culprit was `tree-collect`, which does some
expensive things (like `(gensym)`).  Because we know exactly what we need we can
write something much faster, and profiling confirms that this function isn't
even on the map any more.
author Steve Losh <steve@stevelosh.com>
date Mon, 11 Jul 2016 21:38:03 +0000
parents 23d4dc2900a1
children 2ce458ef85fd
(defpackage #:bones-test
  (:use
    #:cl
    #:5am
    ))

(defpackage #:bones-test.paip
  (:use
    #:cl
    #:5am
    #:bones.quickutils
    #:bones.paip)
  ; kill me
  (:shadowing-import-from #:5am
    #:fail))

(defpackage #:bones-test.wam
  (:use
    #:cl
    #:5am
    #:bones.quickutils
    #:bones.wam)
  (:import-from #:bones.wam
    #:with-database
    #:make-database
    #:with-fresh-database
    #:push-logic-frame-with
    #:rule
    #:fact
    #:facts
    #:call
    #:dump-wam-full
    #:?
    #:query
    #:query-all)
  (:shadowing-import-from #:bones.wam
    #:!))

(defpackage #:bones-test.circle
  (:use :cl :5am :bones.circle))