Commit Graph

100 Commits (6c0ecf631ac9685aabefe2182203fad0811da96f)

Author SHA1 Message Date
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 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
John Benediktsson 95d5daaa7d slots: fix initial value tests. 2011-11-14 10:26:08 -08:00
Slava Pestov 03d6665166 Fix ambiguity between 'initial: f' and no initial value in a slot spec. Fixes #382 2011-11-12 15:35:51 -08:00
John Benediktsson 5a943b32c4 Remove stack effects from HELP: declarations. 2011-10-20 19:36:11 -07: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
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
Philipp Brüschweiler f36d351012 slots: use em dashes 2010-08-14 18:27:30 +02:00
Philipp Brüschweiler 71ee9d5197 slots: the docs for writer used obsolete (>>slot) syntax 2010-08-13 23:50:10 +02:00
Slava Pestov 627295f094 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
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
Slava Pestov 9bc328b50d slots: fix declaration unit test 2010-01-17 00:30:36 +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 0612bc6177 Factor source files should not be executable 2009-11-21 17:50:43 -06:00
Slava Pestov d7dceed096 slots: another bootstrap fix 2009-11-02 20:28:43 -06:00
Slava Pestov 857d0ba1fd core: bootstrap fixes 2009-11-02 20:21:10 -06:00
Keith Lazuka 405e5d015b docs: change $subsection to $subsections 2009-10-02 12:15:48 -04:00
Joe Groff 06ecb30140 make slot initial-values check the class for an "initial-value" word prop; set this word prop on classes.c-types types 2009-08-19 21:28:20 -05:00
Joe Groff 15a7148de0 Merge branch 'master' of git://factorcode.org/git/factor 2009-08-19 15:48:07 -05:00
Slava Pestov 507e2b7f3a Fix some unit test failures 2009-08-18 03:49:05 -05:00
Slava Pestov 030b1b816c Add inline declarations for various assorted methods 2009-08-17 22:32:21 -05:00
Joe Groff 6fe7fe72c7 Merge branch 'master' of git://factorcode.org/git/factor 2009-08-14 10:55:05 -04:00
Doug Coleman 3f3d57032b 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
Joe Groff fd02e59ea1 fix bootstrap 2009-08-13 12:05:20 -04:00
Joe Groff ca592b9654 extend T{ } syntax to build structs 2009-08-12 15:40:06 -04:00
Joe Groff 3ac907cbc2 tuple-ish structs 2009-08-11 22:13:18 -04:00
Joe Groff 06eeedcb4c change-tracking-tuple class. subclasses will have a "changed?" slot that gets set to true when any slot is modified 2009-07-31 21:48:17 -05:00
Slava Pestov a0eb60906d Fix even more usings 2009-05-16 10:45:17 -05:00
Slava Pestov b31fe9b8f2 Implement stricter vocab search path semantics, with a new API for vocabs.parser. Add map-find-last to sequences vocab 2009-05-14 22:31:29 -05:00
Slava Pestov fb6df472a2 Cleaning up USING: lists for new strict semantics 2009-05-14 16:54:16 -05:00
Slava Pestov 3250c6935e Don't make a curry 2009-05-04 05:15:48 -05:00
Slava Pestov a70a2c0e31 Fix some test failures and add an unportable tag 2009-04-30 22:56:15 -05:00
Doug Coleman 7eaa20a4c5 fix stack effect of n*quot, use iota in core/slots 2009-04-17 18:04:41 -05:00
Doug Coleman 7a1841f59b (( -- )) eval -> eval( -- ) 2009-04-17 15:49:21 -05:00
Doug Coleman aad6a3d504 fixing compiler error in core 2009-04-17 12:45:57 -05:00
Slava Pestov 99b8400e56 Documentation updates 2009-04-06 03:00:46 -05:00
Slava Pestov ab7f433aa2 Fix stack effect declarations for (>>foo) words 2009-03-31 23:39:11 -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 44815fd981 Better handling of case when user-defined accessor becomes auto-generated 2009-03-06 23:33:03 -06:00
Slava Pestov 25a877e50b Merge OneEyed's patch 2009-02-28 17:06:55 -06:00
Samuel Tardieu 087d931c36 Remove the tail argument from do/until/while 2009-02-18 02:41:14 +01:00
Slava Pestov 8654bfe921 Merge branch 'master' into new_ui 2009-02-09 20:30:44 -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
U-SLAVA-DFB8FF805\Slava 1cd285bcaa Slots with declared type of callable or quotation now have an initial value [ ] 2009-01-28 01:57:14 -06:00
Slava Pestov 298fdecf32 Fixing eval unit test, and help lint failures from stricter help lint 2009-01-27 15:38:01 -06:00
Slava Pestov 2dc0757850 Cleanups 2009-01-21 19:55:47 -06:00
Slava Pestov daf2857d7b define-inline now takes an effect parameter
C: now sets the stack effect of the new word to slot names
add new basis/constants vocab; CONSTANT: foo bar is equivalent to : foo bar ; inline
(going to fold CONSTANT:, ALIAS: and qualified into core soon perhaps)
tighten the screws: inline words now need a stack declaration too
update some usages of inline words
2008-12-15 19:44:56 -06:00
Slava Pestov b154b21aaa Add new until combinator, and a new do word which acts like a modifier: do while, do until for loops which iterate at least once 2008-12-08 23:37:18 -06:00