Commit Graph

291 Commits (c4d832ce4d225c71b44fc2ac64ca229e0c133093)

Author SHA1 Message Date
Doug Coleman 5fab749dcc words: Change word -> last-word, set-word -> set-last-word. 2013-03-23 16:12:03 -07:00
John Benediktsson 7f3f90eb8d compiler: more use of hash-sets. 2013-03-10 16:13:31 -07:00
John Benediktsson 50db0745d6 graphs: moving to basis. 2013-03-09 08:31:06 -08:00
John Benediktsson f06bfef276 classes: store implementors in hash-sets. 2013-03-08 10:29:50 -08:00
Doug Coleman d33dc194ca core: in-definition -> with-definition. 2012-08-24 16:07:31 -07:00
Doug Coleman b06b6a8261 core: rename in-word-definition to in-definition 2012-08-24 16:04:49 -07:00
Doug Coleman 84402ccf7e core: Don't allow nested defintions in :, ::, M:, M::. Fixes #469. 2012-08-24 15:53:45 -07:00
John Benediktsson 4e72d80256 Using "same?" in more places. 2012-07-21 10:22:44 -07:00
John Benediktsson 559b5bfa5b using the new H{ } make. 2012-07-19 09:50:09 -07:00
Doug Coleman 7441fa81fc issue #358: Rename check-method and check-mixin-class TUPLE:s to ERROR:s. 2012-06-21 08:35:41 -07:00
Doug Coleman 3507b9bad7 classes:
- Allow methods to dispatch off union{ } and intersection{ } classes.
- Add not{ } anonymous-complement syntax.
- Define class-name for anonymous-union/intersection/complement and maybes, and clean up pprint.
- Change maybe: foo to maybe{ foo }
- Call sort-classes when making anonymous-union/anonymous-intersection classes so that they are canonicalized.
2012-05-03 19:45:30 -07:00
Doug Coleman 3ba787b277 core/basis: trim down using lists 2011-11-30 23:15:42 -08:00
Doug Coleman 82c5388f68 classes: add syntax for intersection{ and union{ anonymous classes. make classoid a mixin. 2011-11-22 18:49:42 -08:00
Doug Coleman cab0369fec classes: Make methods dispatch on maybes. Fix a couple bugs in the implementation of maybe. classoid? is now a dumb test if an object could be a well-formed classoid; valid-classoid? tests for well-formedness. Move maybe tests. Make pprint* work better on methods. 2011-11-22 15:12:20 -08:00
Doug Coleman fac17c10ba classes.maybe: move maybe definition from classes.union to classes.maybe 2011-11-22 02:46:36 -08:00
Doug Coleman 067f9830ef classes.union: Define a maybe: word that makes a tuple that acts as an anonymous union for a type and f. Updated all the places we define UNION: ?foo foo POSTPONE: f ;. Fixes #416 and lots of headaches. 2011-11-22 01:56:13 -08:00
Doug Coleman c731dc6edb Rename lookup to lookup-word. 2011-11-06 16:00:00 -08:00
Doug Coleman f9257959fd Rename class to class-of 2011-10-24 06:47:42 -05:00
John Benediktsson 80e1c8e3f2 Eliminate duplicate syntax for stack effects "(" no longer drops and is identical to the old "((", which is now removed. 2011-10-18 13:19:39 -07:00
Doug Coleman f21fee3b73 Rename complete-effect to scan-effect 2011-10-17 10:25:27 -07:00
John Benediktsson 7a36e50c6a generic.parser: adding tests. 2011-10-13 16:49:54 -07:00
John Benediktsson 4558bf3414 Change method parsing to validate stack effects. Fixes #236. 2011-10-13 16:41:17 -07:00
Doug Coleman bf8bf46d16 Update docs for lookup-method. 2011-10-03 15:55:53 -07:00
Doug Coleman 181f11faa8 Make M\ throw an error upon lookup failure. Change method -> ?lookup-method, lookup-method is the throwing version of ?lookup-method. Fixes #229. 2011-10-03 15:49:49 -07:00
Doug Coleman 76580da5d5 Refactor the lexer/parser to expose friendlier words for scanning tokens. The preferred top-level words now throw an exception on EOF.
CREATE -> scan-new
CREATE-CLASS -> scan-new-class
CREATE-WORD -> scan-new-word
CREATE-GENERIC -> scan-new-generic
scan -> (scan-token)
scan-token now throws on eof
(scan-word) returns word/number/f
scan-word now throws on eof
scan-word-name expects a non-number
Fixes #183.
Fixes #209.
2011-09-29 11:28:28 -07:00
Joe Groff 2bd6de9a02 slots: pre-create the "at", "nth", and "global" slots to make deterministic the currently nondeterministic ambiguity between accessors:change-* and assocs:change-at, sequences:change-nth, and namespaces:change-global 2011-09-19 10:03:43 -07:00
John Benediktsson 9f34c9c676 Spelling fixes to documentation. 2011-08-26 16:20:31 -07:00
Keita Haga 04a70e0476 generic: fix using to M\ example in docs 2010-12-05 05:11:38 +09:00
Slava Pestov 8507bd1fce generic.single: fix bug where dynamic and static dispatch didn't co-incide (reported by Mitchell N. Charity and others) 2010-08-21 18:12:00 -07:00
Slava Pestov 0d6f3354ab generic: clean up unit tests a bit 2010-08-21 13:04:37 -07:00
Daniel Ehrenberg 512fe14e4e Merge branch 'bags' of git://github.com/littledan/Factor
Conflicts:

	basis/compiler/cfg/ssa/construction/tdmsc/tdmsc.factor
	basis/furnace/auth/auth.factor
	basis/stack-checker/backend/backend.factor
2010-03-16 13:28:00 -04:00
Joe Groff 191ac353fd generalize stack effects so we can bootstrap with the stricter stack effect checking 2010-03-08 23:38:10 -08:00
Daniel Ehrenberg 7cd3360cdd Fixing ambiguity between sets and namespaces in many unit tests and furnace.auth 2010-02-26 17:17:40 -05:00
Daniel Ehrenberg 7074979745 Moving new-sets to sets 2010-02-26 16:01:01 -05:00
Slava Pestov ae25cfe712 Get foldable and flushable declarations working on typed words 2010-02-24 00:16:55 +13:00
Slava Pestov 63928191e7 Minor documentation fixes 2010-02-18 01:19:39 +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 df55fed478 generic: rename method-body predicate class to method 2010-02-03 23:11:24 +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 8432f4c459 Fix a couple of unit tests that were relying on the old compiler crossref structures 2010-01-31 23:26:55 +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 830e25c70b More changes so that mixins trigger even less recompilation 2010-01-30 09:28:53 +13:00
Slava Pestov ca19d44350 Throw a nice error at parse time if an attempt is made to declare a GENERIC: or MACRO: word inline. Such words cannot be inlined, and doing this before previously result in confusing error messages 2010-01-27 21:00:10 +13:00
Slava Pestov e8378b3dc6 generic, sequences: update docs for iota 2010-01-15 08:23:27 +13:00
Joe Groff 67cc1c01be Merge branch 'master' into simd-cleanup 2009-11-26 16:14:46 -08:00
Slava Pestov 0612bc6177 Factor source files should not be executable 2009-11-21 17:50:43 -06:00
Joe Groff 788289e51e Merge branch 'master' into simd-cleanup 2009-11-08 21:54:53 -06:00
Slava Pestov a361e68f30 generic, words: update unit tests for deopt data structure change 2009-11-08 19:44:04 -06:00
Joe Groff 8894e9047c Merge branch 'master' into simd-cleanup 2009-11-07 22:26:09 -06:00