f1ef8f905a1d
|
Split functor cells into separate functor and arity cells
|
Steve Losh |
Sat, 16 Jul 2016 01:34:04 +0000 |
ec2fab887b0f
|
Constant can just use the functor symbol directly
|
Steve Losh |
Fri, 15 Jul 2016 23:12:18 +0000 |
c4dd0b6c3a91
|
Remove unused arguments
|
Steve Losh |
Fri, 15 Jul 2016 22:02:11 +0000 |
a8598eafe403
|
Remove the god damn functor table
|
Steve Losh |
Fri, 15 Jul 2016 21:55:54 +0000 |
9d42a27624fd
|
`tree-collect` is slow and conses a ton
|
Steve Losh |
Fri, 15 Jul 2016 20:43:32 +0000 |
82413ba524d8
|
De-CLOS the register assignments
|
Steve Losh |
Fri, 15 Jul 2016 20:28:10 +0000 |
e555488c15e6
|
De-CLOS the parse tree
|
Steve Losh |
Fri, 15 Jul 2016 20:16:26 +0000 |
a095d20eeebc
|
Split up the damn compiler.lisp file
|
Steve Losh |
Fri, 15 Jul 2016 19:37:17 +0000 |
5edeeac89e03
|
Add numbers
|
Steve Losh |
Fri, 15 Jul 2016 19:12:21 +0000 |
1411666a60f8
|
Clean up the examples a bit, still needs a lot of work
|
Steve Losh |
Fri, 15 Jul 2016 15:03:01 +0000 |
c547c69d5405
|
Minor cleanup
|
Steve Losh |
Fri, 15 Jul 2016 02:23:07 +0000 |
100ba597fd85
|
Add a beast of a macro to clean up/optimize the hot loop
|
Steve Losh |
Thu, 14 Jul 2016 22:42:53 +0000 |
5c914fbcb042
|
Switch to 1am, test under ECL too
|
Steve Losh |
Thu, 14 Jul 2016 13:30:57 +0000 |
8cfac0fbe30d
|
Inline a function and use eq hash
|
Steve Losh |
Wed, 13 Jul 2016 23:36:51 +0000 |
eec2064a08b6
|
Put the actual functor conses into the store
|
Steve Losh |
Wed, 13 Jul 2016 22:21:19 +0000 |
31305584b29b
|
Split apart the main WAM store into separate type/value arrays
|
Steve Losh |
Wed, 13 Jul 2016 18:33:09 +0000 |
184e610451c0
|
Initial poke at Lispifying the code store
|
Steve Losh |
Tue, 12 Jul 2016 21:56:01 +0000 |
a02637eeccca
|
Add Hanoi test from tAoP
|
Steve Losh |
Tue, 12 Jul 2016 18:53:39 +0000 |
6adb44b99131
|
Comment the logic stack section a tiny bit
|
Steve Losh |
Tue, 12 Jul 2016 16:31:46 +0000 |
eda9b4d218f4
|
Remove useless inline declarations
|
Steve Losh |
Tue, 12 Jul 2016 16:09:37 +0000 |
df9962950d28
|
Elide the unnecessary ALOC/DEAL from chain rules
|
Steve Losh |
Tue, 12 Jul 2016 15:52:13 +0000 |
2ce458ef85fd
|
Implement last call optimization
|
Steve Losh |
Tue, 12 Jul 2016 15:46:22 +0000 |
cb3cc671d18d
|
Beef up the PAIP queues a bit and (ab)use them in the compiler
|
Steve Losh |
Mon, 11 Jul 2016 23:37:37 +0000 |
401cba673bda
|
Simplify and optimize register allocation just a bit
|
Steve Losh |
Mon, 11 Jul 2016 22:33:25 +0000 |
789aa5540746
|
Make instructions inlineable
|
Steve Losh |
Mon, 11 Jul 2016 21:38:10 +0000 |
ab7ad2d6f641
|
Optimize `find-anonymous-variables`
|
Steve Losh |
Mon, 11 Jul 2016 21:38:03 +0000 |
d2ede3f3926a
|
Save the god damn frames
|
Steve Losh |
Mon, 11 Jul 2016 20:30:27 +0000 |
8ea123b6d26f
|
Inline the trail pointer functions
|
Steve Losh |
Mon, 11 Jul 2016 20:04:02 +0000 |
c76d55908e2e
|
Optimize circles a bit
|
Steve Losh |
Mon, 11 Jul 2016 19:56:43 +0000 |
96258fb7be70
|
Type hint the compiler
|
Steve Losh |
Mon, 11 Jul 2016 19:18:35 +0000 |
abffacd7848a
|
Merge the code I accidentally branched off because I'm an idiot
|
Steve Losh |
Mon, 11 Jul 2016 16:26:05 +0000 |
3b0161d2100d
|
Refactor the main WAM store into a `simple-array`
|
Steve Losh |
Mon, 11 Jul 2016 16:17:18 +0000 |
23d4dc2900a1
|
Refactor the code store to use a simple-array
|
Steve Losh |
Mon, 11 Jul 2016 14:15:14 +0000 |
7bd5fdb2151d
|
Don't ever use this
|
Steve Losh |
Mon, 11 Jul 2016 13:48:06 +0000 |
d6b6684d6b7b
|
Turn `instruction-size` into a neat little lookup table
|
Steve Losh |
Mon, 11 Jul 2016 09:58:20 +0000 |
2a7cb53fb03f
|
Clean up the GGP a tiny bit
|
Steve Losh |
Mon, 11 Jul 2016 09:55:05 +0000 |
4d17e3cb6fa2
|
Type-hint the WAM `setf` functions
|
Steve Losh |
Sun, 10 Jul 2016 21:08:12 +0000 |
8cd3257c58e3
|
Name the subterm-handling instructions something not completely stupid
|
Steve Losh |
Sun, 10 Jul 2016 14:28:48 +0000 |
ba205f6b2875
|
Excise the stupid fucking `set-*` opcodes
|
Steve Losh |
Sun, 10 Jul 2016 14:21:18 +0000 |
07e1d5f315f5
|
Fix constant unification
|
Steve Losh |
Sat, 09 Jul 2016 21:51:02 +0000 |
92c590f78133
|
Pool logic frames to avoid creating so many hash tables
|
Steve Losh |
Sat, 09 Jul 2016 21:03:01 +0000 |
8c853f632f8c
|
Clean up and fix the anonymous variable handling
|
Steve Losh |
Fri, 08 Jul 2016 18:14:05 +0000 |
2415dbe555d2
|
Export symbols and add a few sanity checks
|
Steve Losh |
Fri, 08 Jul 2016 17:03:54 +0000 |
55019395ba93
|
Normalize facts and queries because people are lazy
|
Steve Losh |
Wed, 06 Jul 2016 20:41:56 +0000 |
f7b7440c46ff
|
Clean up the rule UI too
|
Steve Losh |
Wed, 06 Jul 2016 20:08:27 +0000 |
0955ab257fef
|
Clean up the UI
|
Steve Losh |
Wed, 06 Jul 2016 18:30:31 +0000 |
be83cfc938fb
|
Add profile.out to .hgignore.
|
Steve Losh |
Wed, 06 Jul 2016 13:49:47 +0000 |
a3466a551136
|
Don't cons lists of numbers, jesus christ
|
Steve Losh |
Tue, 05 Jul 2016 23:54:54 +0000 |
209ecb9eeb25
|
Use a queues instead of lists for the logic frame pending predicates
|
Steve Losh |
Tue, 05 Jul 2016 23:37:14 +0000 |
9086482c09ee
|
Rename "code frame" to "logic frame"
|
Steve Losh |
Tue, 05 Jul 2016 23:12:50 +0000 |
410acaae0c14
|
Implement logic frames for assertion/retraction
|
Steve Losh |
Tue, 05 Jul 2016 23:02:33 +0000 |
6a93a2d2ed60
|
Clean up formatting
|
Steve Losh |
Tue, 05 Jul 2016 16:53:58 +0000 |
89df9abc00e5
|
Add a handy disassembly macro
|
Steve Losh |
Tue, 05 Jul 2016 16:44:10 +0000 |
970e21fa14b0
|
Implement anonymous variables and the `*_void` opcodes
|
Steve Losh |
Mon, 04 Jul 2016 23:35:08 +0000 |
d255816ad1d0
|
Switch from `:keyword` variables to `?symbol` ones
|
Steve Losh |
Sun, 03 Jul 2016 22:50:24 +0000 |
802872f9505a
|
Add AIPS Rovers example
|
Steve Losh |
Thu, 30 Jun 2016 17:53:49 +0000 |