Begin inlining things
Things seemed a bit slow, so I decided to start poking around the guts of this
thing I've built. After a couple hours of profiling, poring over disassembly,
tweaking the hottest functions, and inlining things once their bodies were small
enough, I can say it's definitely faster.
author |
Steve Losh <steve@stevelosh.com> |
date |
Sun, 15 May 2016 00:06:53 +0000 |
parents |
27f037427ad3 |
children |
31305584b29b |
(asdf:defsystem #:bones
:name "bones"
:description "A logic programming library for Common Lisp."
:author "Steve Losh <steve@stevelosh.com>"
:maintainer "Steve Losh <steve@stevelosh.com>"
:license "MIT/X11"
:version "0.0.1"
:depends-on (#:defstar
#:optima
#:trivial-types
#:cl-arrows
#:policy-cond
#:fare-quasiquote-optima
#:fare-quasiquote-readtable)
:serial t
:components ((:file "src/quickutils") ; quickutils package ordering crap
(:file "package")
(:module "src"
:serial t
:components ((:file "paip")
(:file "utils")
(:file "circle")
(:module "wam"
:serial t
:components ((:file "constants")
(:file "types")
(:file "cells")
(:file "bytecode")
(:file "wam")
(:file "compiler")
(:file "vm")
(:file "dump")
(:file "ui")))
(:file "bones")))))