Slava Pestov
c4c14c7ceb
classes.tuple: fix screwup
2010-02-18 03:00:43 +13:00
Slava Pestov
60296be964
typed: only unbox final classes. Fixes bug reported by littledan
2010-02-18 02:39:12 +13:00
Slava Pestov
01824d41be
Add support for final tuple classes which cannot be subclassed: TUPLE: foo ... ; final
2010-02-18 02:19:57 +13:00
Slava Pestov
cd1986a906
classes: fix regression from recent bug fix
2010-02-15 23:46:55 +13:00
Slava Pestov
3e5e3a6d3f
classes: call reset-generic on predicate word to avoid redefinition problems (reported by littledan)
2010-02-15 18:34:45 +13:00
Slava Pestov
a118f208dc
compiler.tree.propagation, compiler.tree.escape-analysis: make these passes handle constants in a more robust way in compilation units involving tuple reshaping
2010-02-12 02:50:59 +13:00
Slava Pestov
83410e23cc
classes.algebra: remove class<=> -- it's never used and has incorrect semantics
2010-02-10 15:04:48 +13:00
Slava Pestov
f20b4e5607
tools.deploy.shaker: don't try to intern all word props anymore
2010-02-04 17:40:53 +13:00
Slava Pestov
11be5a4bd5
Rename update to assoc-union!, add assoc-filter! assoc-diff! words
2010-02-04 02:55:00 +13:00
Slava Pestov
a005e678db
classes.tuple: make error slots read only for small space savings
2010-02-03 23:11:25 +13:00
Brad Christensen
9b9322ea1e
A number of documentation fixes and cleanup.
2010-02-03 00:05:03 -07:00
Slava Pestov
e929d906ce
classes: If a tuple class with subclasses is redefined into something that's not a tuple class, subclasses are changed to inherit from 'tuple' instead of being forgotten. Also, changing the metaclass of a union or intersection member no longer removes it from the union or intersection. Finally, make some internal words private
2010-02-01 02:48:39 +13:00
Slava Pestov
3addfcc2ad
classes: more robust code for detecting circular inheritance, move it out of classes.tuple since predicate classes need the same check too
2010-02-01 00:08:18 +13:00
erikc
0770b940b0
Merge up
2010-01-30 20:48:06 -08:00
erikc
f33c73bf94
Merge up
2010-01-30 20:39:43 -08:00
Slava Pestov
2c63161c84
stack-checker.dependencies: make conditional dependencies more robust
2010-01-31 01:55:35 +13:00
Slava Pestov
09ead56652
Re-work flushed dependencies into new compiler cross-referencing framework
2010-01-30 09:29:00 +13:00
Slava Pestov
c027046857
New 'conditional dependency' mechanism for more accurate recording of recompilation information
2010-01-30 09:28:57 +13:00
Slava Pestov
29fc287618
classes.tuple: documentation fix
2010-01-30 09:28:56 +13:00
Slava Pestov
4f68808a72
Rename predicate-word to create-predicate-word and add a new predicate-word word
2010-01-30 09:28:55 +13:00
Slava Pestov
bd479db2f8
Fix regression when forgetting classes
2010-01-30 09:28:55 +13:00
Slava Pestov
34287fd9d6
Minor documentation updates
2010-01-30 09:28:54 +13:00
Slava Pestov
8b19b56a1c
classes.mixin: privacy please
2010-01-30 09:28:53 +13:00
Slava Pestov
830e25c70b
More changes so that mixins trigger even less recompilation
2010-01-30 09:28:53 +13:00
Slava Pestov
066bf9a42f
classes.algebra: couple more tests
2010-01-30 09:28:53 +13:00
Slava Pestov
e6d1388dcc
Clean up class algebra a bit, and change mixins to recompile less, taking advantage of new semantics
2010-01-30 09:28:52 +13:00
Slava Pestov
af41dc6169
Trying to fix mixin semantics
2010-01-30 09:28:51 +13:00
Slava Pestov
b63ec30449
classes.tuple: tests were changing superclass of vocab tuple
2010-01-27 20:24:33 +13:00
Slava Pestov
94c93f0bc7
vm: 'become' primitive needs to update literal references in code blocks
2010-01-27 18:42:31 +13:00
Slava Pestov
d0dc6ba8af
slots, classes.tuple: make 'integer'-declared slots call >integer on the new value before storing it in, and remove code duplication between type checks in writer methods and boa constructors
2010-01-16 19:29:19 +13:00
Slava Pestov
df4fb4a3ee
Removing integers-as-sequences
2010-01-15 07:15:33 +13:00
Slava Pestov
0612bc6177
Factor source files should not be executable
2009-11-21 17:50:43 -06:00
Slava Pestov
e30d275e41
compiler.cfg: 'basic-block new hashcode' should not throw an exception; fixes tools.deploy.test.11
2009-11-16 02:01:36 -06:00
Slava Pestov
bb8eabba36
Unit test fixes
2009-11-13 23:00:50 -06:00
Slava Pestov
14a4535ad9
classes.algebra: output cleaner anonymous unions and intersections
2009-11-13 03:01:22 -06:00
Slava Pestov
c693587018
classes.algebra: cleanup
2009-11-10 17:41:47 -06:00
Slava Pestov
e4ad642134
vm: 4 bit tags, new representation of alien objects makes unbox-any-c-ptr more efficient (work in progress)
2009-11-02 04:25:54 -06:00
Doug Coleman
1d12a6707d
sigma -> map-sum
2009-10-29 14:34:04 -05:00
Doug Coleman
bd13e018dd
memq? -> member-eq?, sorted-memq? -> sorted-member-eq?
2009-10-28 15:02:00 -05:00
Slava Pestov
951e3e9c83
delete-nth -> remove-nth!
2009-10-27 23:41:57 -05:00
Slava Pestov
32adb5df27
classes.builtin: fix help lint
2009-10-20 14:28:34 -05:00
Doug Coleman
50d4eb27bf
add missing usings
2009-10-10 14:04:22 -05:00
Doug Coleman
584cd44856
fix the tuple subclassing example docs
2009-10-10 14:02:35 -05:00
Keith Lazuka
405e5d015b
docs: change $subsection to $subsections
2009-10-02 12:15:48 -04:00
Joe Groff
92e864b019
fix stack effect of ERROR: words that inherit slots from a base class
2009-09-29 12:52:13 -05:00
Doug Coleman
b86314ec39
Merge branch 'master' of git://factorcode.org/git/factor
2009-09-21 17:59:48 -05:00
Slava Pestov
962d039852
Rename specific-method to method-for-class, rename (effective-method) to method-for-object, and make both much faster
2009-09-21 17:42:20 -05:00
Doug Coleman
eceed177d6
replace usages of <" with """
2009-09-20 22:42:40 -05:00
Joe Groff
748ba4b833
give a better error message when an invalid slot name is used in a tuple/struct literal
2009-09-16 18:07:39 -05:00
Slava Pestov
d5bc1ceca2
classes.struct: fix some bugs
...
- STRUCT: foo<ENTER> in listener threw an error
- S{ did not throw an error when used with non-struct types
- attempting to subclass a struct class now fails
- forgetting a struct class now removes the corresponding C type
- 'see'ing a struct class now indents correctly
2009-09-10 15:59:27 -05:00