Slava Pestov
890553b776
Fixing tests for method-sec removal
2009-04-06 05:22:28 -05:00
Slava Pestov
7bf0a46d3d
Updating tests for method-spec removal
2009-04-06 04:16:39 -05:00
Slava Pestov
99b8400e56
Documentation updates
2009-04-06 03:00:46 -05:00
Slava Pestov
268abfcf2a
Remove method-specs in favor of M\
2009-04-06 02:59:59 -05:00
Slava Pestov
6c0986f8b2
Add definition mixin in definitions vocab to replace hard-coded union in ui.tools.operations; add ?execute to kernel to replace dup word? [ execute ] when calls in unicode.breaks and opengl
2009-03-26 21:27:45 -05:00
Slava Pestov
6f4e5b4bd9
Move synopsis* from definitions to see
2009-03-23 19:25:10 -05:00
Slava Pestov
6080c6e734
Fix stack effect redefinition
2009-03-22 20:16:31 -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
38c6be94d4
Fixing some stack comments
2009-03-16 06:17:18 -05:00
Slava Pestov
1fab364299
Updating some unit tests
2009-03-16 00:05:43 -05:00
Slava Pestov
943f0ee10f
Add test cases for problem with moving mixin instances and methods between vocabularies
2009-03-15 18:33:29 -05:00
Slava Pestov
bf41b187b0
Re-organize code so that with-compilation-unit can infer
...
Fix with-compilation-unit to work in deployed code
2009-03-13 19:39:32 -05:00
Slava Pestov
667eca9410
Fix unit tests and help lint for 'see' move
2009-03-11 17:33:54 -05:00
Slava Pestov
abab72f80c
Move 'see' to its own vocabulary, and fix excess newlines after panes change
2009-03-11 07:18:24 -05:00
Slava Pestov
bfb6b4642a
Consultations now implement the definition protocol; removing one from a source file forgets consulted methods
2009-03-07 00:42:43 -06:00
Slava Pestov
37bc52afa8
Redefining methods didn't always update callers if more than one method on the same generic was redefined in a compilation unit
2009-03-06 23:33:30 -06:00
Slava Pestov
ec186a23dc
Make watch and other annotations work on method-specs. { world graft* } watch
2009-03-06 13:32:07 -06:00
Slava Pestov
ca7a155b72
Merge branch 'master' into new_ui
2009-03-01 20:13:05 -06: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
ce1bc1d6ed
Fixing conflicts from stack checker changes
2009-02-24 01:21:10 -06:00
Slava Pestov
421ee726b8
Merge branch 'master' into new_ui
2009-02-16 21:22:12 -06:00
Slava Pestov
6b25e99470
Add summary for heaps more vocabs
2009-02-16 21:05:13 -06:00
Slava Pestov
669548e62e
Clean up some usages of tuck, and add Joe's curried cleave/spread/apply combinators to kernel vocabulary
2009-02-02 13:43:54 -06:00
Doug Coleman
3c408342ef
renaming: contain? -> any?, deep-contains? -> deep-any?, pad-left -> pad-head, pad-right -> pad-tail, trim-left -> trim-head, trim-right -> trim-tail
2009-01-29 22:19:07 -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
f34c14a0f5
Remove some usages of tuck
2009-01-23 18:20:47 -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
e4f8448eb1
Fix some problems with arithmetic type inference, exposed by recent changes to log2 word
...
- declared input type for bignum-shift was stricter than the runtime behavior, leading to bad propagation of type info if shift count was a bignum
- types inferred for type functions which used number-valued/integer-valued/real-valued were not always precise, eg bignum bignum bitxor => integer
- add interval-log2, type function for (log2)
- remove math-class-min, it was useless
2008-12-07 19:44:49 -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
Doug Coleman
0e14f767ee
core: swap 3append -> glue
2008-12-03 19:12:48 -06:00
Slava Pestov
0ba5304ee3
Fix assocs, generic.standard tests
2008-12-03 03:44:08 -06:00
Slava Pestov
c43690a8fb
Didn't pass help lint because of obsolete example
2008-11-29 00:37:46 -06:00
Slava Pestov
eb8c621b6f
Faster generic arithmetic on fiixnums: both-fixnums? sub-primitive performs a check if the top two stack items are both fixnums with a single conditional branch
2008-11-28 08:35:02 -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
b19e87ea75
Fix corner case where auto-use didn't print using list
2008-11-24 16:28:35 -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
3e7afcac29
(call-next-method) now takes a method instead of a class and a generic
2008-11-22 19:57:25 -06:00
Slava Pestov
9bf63b1613
New $quotation markup element
2008-11-16 09:03:30 -06:00
Slava Pestov
93e9e34175
Add $maybe markup element
2008-11-16 06:02:13 -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
1d630b6cf2
Minor documentation fixes
2008-11-11 10:51:15 -06:00
Slava Pestov
33a082c361
Fix reference to obsolete G: word
2008-11-10 02:43:16 -06:00
Slava Pestov
63a9975a0e
Support inline, foldable, flushable on methods; add declarations in a couple of places for ricing purposes
2008-11-06 13:13:37 -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