Commit Graph

212 Commits (632c19520a5dc4b03dade40cdfb7ac8bb85a358a)

Author SHA1 Message Date
Slava Pestov 801197a58d classes.algebra: make it work better to fix bug reported by Sascha Matzke 2010-07-29 19:57:23 -04:00
Slava Pestov 4415a0924c compiler.tree.finalization: record dependencies on inlined predicates 2010-07-23 16:31:15 -07:00
Slava Pestov e935681743 Add a scan-token word which is like scan, except throws an error on EOF; document scan-object word; mention that scan-token/scan-object are preferred over scan/scan-word 2010-07-06 16:20:08 -04:00
Slava Pestov d2d466de29 Language change: tuple slot setter words with stack effect ( value object -- ) are now named FOO<< instead of (>>FOO) 2010-05-06 17:21:02 -04:00
Joe Groff dd825806da more help-lint 2010-03-09 21:02:43 -08:00
Joe Groff c8c93f8336 classes.tuple.parser: throw bad-slot-name immediately when an invalid slot name in a tuple/struct literal is scanned 2010-02-28 20:14:16 -08:00
Joe Groff 524e58078a repeated runs of classes.tuple test would fail because partially defined classes.tuple.tests:bad-superclass type would shadow classes.tuple:bad-superclass 2010-02-22 19:35:52 -08:00
Slava Pestov 06fb9aac4f Fix unit test failures 2010-02-18 04:58:30 +13:00
Slava Pestov 6675bc2ace classes.tuple: document final class declaration 2010-02-18 04:13:34 +13:00
Slava Pestov fea8be5b6f classes.tuple: fix screwup 2010-02-18 03:00:43 +13:00
Slava Pestov 56dff5b0f4 typed: only unbox final classes. Fixes bug reported by littledan 2010-02-18 02:39:12 +13:00
Slava Pestov 1100861204 Add support for final tuple classes which cannot be subclassed: TUPLE: foo ... ; final 2010-02-18 02:19:57 +13:00
Slava Pestov a36d9eb669 classes: fix regression from recent bug fix 2010-02-15 23:46:55 +13:00
Slava Pestov 4cc907e1af 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 b3c7b51a31 tools.deploy.shaker: don't try to intern all word props anymore 2010-02-04 17:40:53 +13:00
Slava Pestov 57a47d9566 Rename update to assoc-union!, add assoc-filter! assoc-diff! words 2010-02-04 02:55:00 +13:00
Slava Pestov 002d454aa7 classes.tuple: make error slots read only for small space savings 2010-02-03 23:11:25 +13:00
Brad Christensen c37b4f5f61 A number of documentation fixes and cleanup. 2010-02-03 00:05:03 -07:00
Slava Pestov 03a74f2237 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 1f255d09e9 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
Slava Pestov df16224ab2 Re-work flushed dependencies into new compiler cross-referencing framework 2010-01-30 09:29:00 +13:00
Slava Pestov 2138b55708 New 'conditional dependency' mechanism for more accurate recording of recompilation information 2010-01-30 09:28:57 +13:00
Slava Pestov ee74d989df classes.tuple: documentation fix 2010-01-30 09:28:56 +13:00
Slava Pestov 7c9250d5b2 Minor documentation updates 2010-01-30 09:28:54 +13:00
Slava Pestov c178279454 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 43a02cfa7c classes.tuple: tests were changing superclass of vocab tuple 2010-01-27 20:24:33 +13:00
Slava Pestov 6889b0b7f9 vm: 'become' primitive needs to update literal references in code blocks 2010-01-27 18:42:31 +13:00
Slava Pestov b6ddccd03a 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 08b6ebc7fa Factor source files should not be executable 2009-11-21 17:50:43 -06:00
Slava Pestov 43c1ae0a44 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 004b92e175 classes.algebra: cleanup 2009-11-10 17:41:47 -06:00
Doug Coleman 1ee8c8f5eb sigma -> map-sum 2009-10-29 14:34:04 -05:00
Doug Coleman b5fd809209 memq? -> member-eq?, sorted-memq? -> sorted-member-eq? 2009-10-28 15:02:00 -05:00
Doug Coleman b262a6800f add missing usings 2009-10-10 14:04:22 -05:00
Doug Coleman 0470c5c291 fix the tuple subclassing example docs 2009-10-10 14:02:35 -05:00
Keith Lazuka 8f79ea91ba docs: change $subsection to $subsections 2009-10-02 12:15:48 -04:00
Joe Groff 4470bf994b fix stack effect of ERROR: words that inherit slots from a base class 2009-09-29 12:52:13 -05:00
Joe Groff 2091f744bc 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 8aecdf13ab 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
Slava Pestov 9f5577c368 classes.tuple: don't run out of memory inside 'instances' quotation if optimizing compiler is off 2009-09-02 05:19:20 -05:00
Doug Coleman d46fc3ffeb fix another tuple definition bug 2009-09-01 11:36:06 -05:00
Doug Coleman 11be3077a0 inheriting from itself would hang a tuple definition. only breaks if tuple is being redefined 2009-09-01 04:02:44 -05:00
Doug Coleman f75b0ff178 Merge branch 'master' of git://factorcode.org/git/factor 2009-08-22 21:24:02 -04:00
Joe Groff 5690fbff4c decouple struct parsing/printing from tuple parsing/printing a bit 2009-08-19 18:53:44 -05:00
Joe Groff 6136271344 Merge branch 'master' of git://factorcode.org/git/factor 2009-08-19 15:48:07 -05:00
Doug Coleman d8bfff26f8 use iota 2009-08-19 08:27:28 -05:00
Doug Coleman 8996c4f2c3 use iota 2009-08-19 08:21:45 -05:00
Slava Pestov bee6fa641e Add inline declarations for various assorted methods 2009-08-17 22:32:21 -05:00
Joe Groff 4033e46800 Merge branch 'master' of git://factorcode.org/git/factor 2009-08-14 10:55:05 -04:00
Doug Coleman d1ce837569 Delete empty unit tests files, remove 1- and 1+, reorder IN: lines in a lot of places, minor refactoring 2009-08-13 19:21:44 -05:00