Doug Coleman
e189954ecc
core: Rename iota to <iota> so we can have TUPLE: iota ... ; instead of TUPLE: iota-tuple ... ;
2017-06-02 11:57:05 -05:00
Doug Coleman
7c7bb93c55
factor: Rename GENERIC# to GENERIC#:.
...
Fixes #1670 .
2017-06-01 13:58:58 -05:00
John Benediktsson
0bb297ed92
slots: silly formatting change.
2016-04-14 16:59:33 -07:00
Björn Lindqvist
85c3ccbb98
slots: add initial value for integer-array-capacity, fixes part of #1571
2016-03-21 18:10:39 +01:00
John Benediktsson
ceb75057da
change ERROR: words from throw-foo back to foo.
2015-08-13 16:13:05 -07:00
Doug Coleman
02008979d9
factor: Change ERROR: foo ; to define ``throw-foo`` instead of having ``foo`` throw implicitly. The old ``foo`` still throws implicitly because this is a big change to get right in one patch, but it should be removed soon.
2015-08-12 15:26:18 -05:00
Doug Coleman
330c7ba156
factor: Removing SLOT: nth/at/global in favor of using change: at for tuple slots named ``at`` and change-at for hashtables.
...
Redo many FROM: and QUALIFIED: and using lists.
2015-08-12 08:49:02 -05:00
Doug Coleman
44e8e7b344
primitives: Change PRIMITIVE: to check that the word is in that vocabulary and the stack effect is correct.
...
Use PRIMITIVE: in core/ and basis/
2015-06-25 18:02:03 -07:00
Doug Coleman
6e60c811ac
core: Rename create to create-word, create-in to create-word-in.
2015-06-08 12:47:35 -07:00
Doug Coleman
632ee276e1
core: Remove trailing whitespace.
2014-10-31 01:14:31 -07:00
John Benediktsson
77e8346ec0
slots: fix typo, cleanup style a little bit.
2013-03-28 20:04:19 -07:00
John Benediktsson
6a1f280e88
slots: make predicates return booleans.
2012-08-14 18:09:50 -07:00
Doug Coleman
78db66a924
slots: Don't coerce flots to integers in tuple slots. Add an initial value for bignums so they can be used as tuple slot types. Fixes #593 .
2012-07-30 18:16:44 -07: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
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
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
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
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
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
857d0ba1fd
core: bootstrap fixes
2009-11-02 20:21:10 -06: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
030b1b816c
Add inline declarations for various assorted methods
2009-08-17 22:32:21 -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
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
3250c6935e
Don't make a curry
2009-05-04 05:15:48 -05:00
Doug Coleman
7eaa20a4c5
fix stack effect of n*quot, use iota in core/slots
2009-04-17 18:04:41 -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
Samuel Tardieu
087d931c36
Remove the tail argument from do/until/while
2009-02-18 02:41:14 +01: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
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
Doug Coleman
37b9a350cc
swap ... 3append -> surround in core
2008-12-06 18:42:41 -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
dffbb120a3
SLOT: now defines the accessor words instead of just deferring them
2008-11-14 00:39:28 -06:00
Slava Pestov
c19f2257f4
Fix permission bits
2008-10-02 08:34:49 -05:00
Slava Pestov
44f53de164
Move make to its own vocabulary, remove fry _ feature
2008-09-10 20:07:00 -05:00
Slava Pestov
fdf75fe110
Remove slots.deprecated, remove unused slots from slot-spec tuple; last vestiges of old accessors are now gone forever
2008-09-03 18:47:52 -05:00
Slava Pestov
c6915b1023
Working on tuple slot propagation
2008-07-25 02:07:45 -05:00