Slava Pestov
7aa65b5b5f
Fixing new method dispatch implementation
2009-04-25 19:41:27 -05:00
Slava Pestov
3dc9fdf9db
Fleshed out new dispatch code
2009-04-24 20:43:01 -05:00
Slava Pestov
8c5b0373a8
Working on new method dispatch system
2009-04-24 15:31:06 -05:00
Slava Pestov
48e70b65fa
Move cross-referencing stuff to tools.crossref since compiler doesn't depend on it anymore, and compute cross-referencing index as needed; reduces image size by ~4Mb
2009-04-22 04:20:38 -05:00
Slava Pestov
a3c0dd44a1
Revert "Remove method-declaration stuff from generic.standard since hints accomplishes the same thing"
...
This reverts commit 487b92074c
.
2009-04-22 00:15:48 -05:00
Slava Pestov
487b92074c
Remove method-declaration stuff from generic.standard since hints accomplishes the same thing
2009-04-21 23:19:13 -05:00
Doug Coleman
aad6a3d504
fixing compiler error in core
2009-04-17 12:45:57 -05:00
Slava Pestov
fd5ab25a09
Better handling of errors without file/line info
2009-04-13 17:19:32 -05:00
Slava Pestov
4fc2182ac8
define-generic and define-simple-generic now take stack effect parameters; math-combination is a singleton instead of a tuple
2009-03-22 18:00:26 -05:00
Slava Pestov
667eca9410
Fix unit tests and help lint for 'see' move
2009-03-11 17:33:54 -05:00
Slava Pestov
03cb32ad9c
Make execute( faster, add execute-unsafe( and make effect tuple slots read only
2009-03-01 20:12:35 -06:00
Slava Pestov
1951d739a0
Stack effect declarations are mandatory on all words now
...
define-temp now takes an effect parameter
Fix compiler bug that Dan found
Stricter enforcement of * effects
Move compile-call from compiler.units to compiler
2009-02-23 20:27:05 -06:00
Slava Pestov
6b25e99470
Add summary for heaps more vocabs
2009-02-16 21:05:13 -06:00
Slava Pestov
ca2f01e0d0
Updating non-core libraries for monotonic? change
2009-01-16 17:02:54 -06:00
Slava Pestov
de3a4f5462
Change some dup ... swap to bi and keep
2008-12-15 21:20:32 -06:00
Slava Pestov
a56d480aa6
Various optimizations leading to a 10% speedup on compiling empty EBNF parser:
...
- open-code getenv primitive
- inline tuple predicates in finalization
- faster partial dispatch
- faster built-in type predicates
- faster tuple predicates
- faster lo-tag dispatch
- compile V{ } clone and H{ } clone more efficiently
- add fixnum fast-path to =; avoid indirect branch if two fixnums not eq
- faster >alist on hashtables
2008-12-06 09:16:29 -06:00
Slava Pestov
0ba5304ee3
Fix assocs, generic.standard tests
2008-12-03 03:44:08 -06:00
Slava Pestov
92cc760070
Fixes
2008-11-28 01:11:03 -06:00
Slava Pestov
817510cdb9
Another attempt at size reduction
2008-11-28 01:08:16 -06:00
Slava Pestov
c8f227ccf7
Tweak standard-next-method-quot to produce smaller quotations
2008-11-28 00:56:54 -06:00
Slava Pestov
a4d9cdfeb3
Refactor all usages of >r/r> in core to use dip, 2dip, 3dip
...
Non-optimizing compiler now special-cases dip, 2dip, 3dip following a
literal quotation: this allows us to break the dip/slip meta-circle
without explicit calls to >r/r>
2008-11-23 02:44:56 -06:00
Slava Pestov
4858a2ea74
Simplify inline? now that generic words can't be inline anymore
2008-11-13 09:33:18 -06:00
Slava Pestov
ef6206d4bb
Try to optimize generic dispatch to speed up + on fixnums, nth on arrays for example
2008-11-13 03:51:04 -06:00
Slava Pestov
33a082c361
Fix reference to obsolete G: word
2008-11-10 02:43:16 -06:00
Slava Pestov
d2b2cda596
Sort methods by tag, this speeds up >fixnum in the common case where the input is a fixnum
2008-11-06 10:44:06 -06:00
Slava Pestov
a95bb533b5
Remove more redundant branches from tuple type predicates and generic words with methods on tuple classes
2008-11-06 09:08:17 -06:00
Slava Pestov
aac256324f
lo-tag-dispatch-engine now sorts tags, this ensures that >fixnum compiles more efficiently
2008-11-06 00:02:10 -06:00
Slava Pestov
cc879fa9b7
Tuple layouts are now arrays, instead of built-in types. The superclass
...
array is now part of the tuple layout object itself, and class hashcodes
are stored alongside class words there. This removes 2 indirections when
reading a superclass, and 3 when reading a superclass hashcode.
2008-11-05 22:20:29 -06:00
Slava Pestov
4e98751ce0
Remove a conditional branch from all tuple dispatches, since we don't have to check if the class height is at least 1; and remove memory accesses from tuple dispatch where all tuples are height 1
2008-11-05 20:23:38 -06:00
Slava Pestov
2fb17458e3
Fix duplication
2008-10-28 16:22:54 -07:00
Slava Pestov
95eb0f696b
Rice
2008-10-23 05:28:04 -05:00
Slava Pestov
c54668596d
More efficient hi-tag accessor
2008-10-11 13:58:41 -05:00
Slava Pestov
0c8e2584b4
Fixing unit tests for make, fry changes
2008-09-11 00:20:06 -05:00
Slava Pestov
44f53de164
Move make to its own vocabulary, remove fry _ feature
2008-09-10 20:07:00 -05:00
Slava Pestov
110a5e5162
Change equality semantics
2008-09-02 02:02:05 -05:00
Slava Pestov
3b24b52673
Omit default method from usage lists
2008-09-01 04:32:26 -05:00
Slava Pestov
c9df16e931
Tweak XML-RPC
2008-08-29 04:33:05 -05:00
Slava Pestov
6ead724b25
Fixing bugs
2008-08-29 04:23:39 -05:00
Slava Pestov
40e926609a
Fixing unit tests
2008-08-22 22:07:59 -05:00
Slava Pestov
2440fc1ceb
Fixing remaining issues
2008-08-22 17:38:23 -05:00
Slava Pestov
95657e5742
Remove some funny retain stack usage
2008-08-18 20:13:24 -05:00
Slava Pestov
ac2bf0b87d
Adding inline recursive declarations
2008-07-18 19:22:59 -05:00
Slava Pestov
a8808b7087
Non-optimizing compiler now inlow inlines some primitives, this improves bootstrap time
2008-07-07 10:39:04 -05:00
Slava Pestov
e6282fe1a8
Performance improvements
2008-07-06 01:37:11 -05:00
Slava Pestov
b0d11073d6
Fix step-into on generic words and call-next-method in walker
2008-07-05 00:59:28 -05:00
Slava Pestov
537269447c
Move mirrors out of the boot image
2008-07-02 00:20:01 -05:00
Slava Pestov
0be00f03e6
Mirrors now check sot t slot types, support type coercion for setters, instance? now infers, better transform for 'new', more efficient 'case' where keys are all wrappers
2008-06-29 02:12:44 -05:00
Slava Pestov
b36e06d0d6
Builtinn types now use new slot accessors; tuple slot type declaration work in progress
2008-06-28 02:36:20 -05:00
Slava Pestov
c95851e34f
Bug fixes and cleanups
2008-06-11 02:58:38 -05:00
Slava Pestov
29fa4a8a54
assoc-find is no longer generic
2008-06-09 05:22:21 -05:00