Slava Pestov
cc879fa9b7
Tuple layouts are now arrays, instead of built-in types. The superclass
...
array is now part of the tuple layout object itself, and class hashcodes
are stored alongside class words there. This removes 2 indirections when
reading a superclass, and 3 when reading a superclass hashcode.
2008-11-05 22:20:29 -06:00
Slava Pestov
4fd1767768
Old fix for classes-intersect? no-method bug was incorrect; we were
...
ignoring anonymous classes in compiled-generic-crossref. Also,
forget* now calls reset-word so that references to predicates of
forgotten classes don't break the compiler with a similar error.
2008-11-05 18:32:02 -06:00
Slava Pestov
fb64c1cb45
Fix class<=; a predicate class derived from a union was not reported as being contained in the union
2008-11-04 04:59:54 -06:00
Slava Pestov
cc94894441
Fix notorious classes-intersect? bug, or at least one manifestation thereof. Turns out that we may temporarily end up with forgotten classes in the compiled-generic-crossref table. This is not a problem, since subsequently the words that reference forgotten classes will presumably be redefined and recompiled, but it does mean that (compiled-generic-usage) does need to handle this case
2008-11-04 03:38:44 -06:00
Slava Pestov
9b492b55e0
Fix minor leak: class-caches were not reset if a class was forgotten
2008-11-04 02:17:37 -06:00
Slava Pestov
7134fad54c
Add more unit tests highlighting the problem: predicate -vs- union comparison is broken
2008-11-04 02:17:22 -06:00
Slava Pestov
b4d3473d5e
Tuple parsing didn't handle line breaks properly; if scan returns f, must throw unexpected-eof
2008-11-03 21:01:50 -06:00
Slava Pestov
cdb5c30bd3
Only build a generic word once, even if a compilation unit defines several methods on it, by adding generics to a set and building them at the end. 25% improvement on bootstrap time
2008-11-03 03:51:28 -06:00
Slava Pestov
7fc44aa444
Add failing tests
2008-10-31 21:07:57 -05:00
Slava Pestov
94fa3929a8
Rice
2008-10-23 05:28:22 -05:00
Slava Pestov
325dbf3eef
Fix regression
2008-10-20 21:07:55 -05:00
Slava Pestov
ab61e5cd8c
Fix performance problem
2008-10-20 05:56:13 -05:00
Slava Pestov
d2dd7288b3
Fix parser bug with multi-line tuple literals
2008-10-08 23:43:37 -05:00
Slava Pestov
c19f2257f4
Fix permission bits
2008-10-02 08:34:49 -05:00
Slava Pestov
34952ff5c4
Faster call-next-method
2008-10-01 08:20:49 -05:00
Slava Pestov
c3f9d2180a
Fix typo
2008-10-01 03:35:41 -05:00
Slava Pestov
78881e1368
Better error message with invalid tuple literals
2008-09-24 21:23:26 -05:00
Slava Pestov
3d790d8ac8
Memory ricing to make deploy tests pass on Mac OS X/PowerPC
2008-09-19 00:26:27 -05:00
Slava Pestov
44f53de164
Move make to its own vocabulary, remove fry _ feature
2008-09-10 20:07:00 -05:00
Doug Coleman
b1d26e100a
use if/when/unless-empty, docs
2008-09-06 17:10:32 -05:00
Slava Pestov
32c2543571
Documentation fixes
2008-09-06 05:12:28 -05:00
Slava Pestov
57ca685e26
New tuple syntax
2008-09-05 20:39:45 -05:00
Doug Coleman
21dfb706fb
more docs for classes
2008-09-05 16:30:58 -05:00
Slava Pestov
d12f55be31
Fix unit test failure in compiler
2008-09-03 17:24:06 -05:00
Slava Pestov
6b07c85fec
Minor fixes here and there for delegation slot removal
2008-09-03 06:05:50 -05:00
Slava Pestov
e1716d92b3
Remove delegation slot
2008-09-03 03:46:56 -05:00
Doug Coleman
1e8358eff5
Merge branch 'master' of git://factorcode.org/git/factor
2008-09-02 02:09:54 -05:00
Slava Pestov
110a5e5162
Change equality semantics
2008-09-02 02:02:05 -05:00
Doug Coleman
bef502adfc
ENABLE NEW ACCESSORS
2008-09-02 01:56:06 -05:00
Slava Pestov
20380e613e
Fix typo
2008-08-31 07:55:34 -05:00
Slava Pestov
0c304b8fc6
Removing old accessor usages from core and basis
2008-08-31 07:45:33 -05:00
Slava Pestov
f5fbd94a4c
New compiled crossref implementation
2008-08-31 01:34:00 -05:00
Slava Pestov
86e04a81dc
Fix conflict
2008-08-30 02:32:17 -05:00
Slava Pestov
3cef7c9992
Smarter usage tracking system
2008-08-30 02:31:27 -05:00
Slava Pestov
b3f3068bdc
Massive focused action #1
2008-08-30 00:09:45 -05:00
Slava Pestov
85cdb1b767
Working on new compiled usage strategy; old one was wrong
2008-08-30 00:05:27 -05:00
Doug Coleman
90bc1bc0b5
use new accessor
2008-08-29 10:37:07 -05:00
Slava Pestov
74dccc7fbf
Debugging compiler
2008-08-28 22:28:34 -05:00
Slava Pestov
a4ac751605
Starting to remove delegation
2008-08-22 23:20:49 -05:00
Slava Pestov
8b855b2445
Help lint fixes
2008-08-22 23:00:35 -05:00
Slava Pestov
40e926609a
Fixing unit tests
2008-08-22 22:07:59 -05:00
Slava Pestov
2440fc1ceb
Fixing remaining issues
2008-08-22 17:38:23 -05:00
Slava Pestov
86f11713e3
Fixing some more bugs
2008-08-22 03:12:15 -05:00
Slava Pestov
95657e5742
Remove some funny retain stack usage
2008-08-18 20:13:24 -05:00
Slava Pestov
8b55b53269
Re-implement reverse to fix obscure problem
2008-08-18 16:40:50 -05:00
Slava Pestov
4cb64aaeb8
Fixing unit tests for eval word being moved
2008-07-29 00:05:01 -05:00
Slava Pestov
d66f887736
Create basis vocab root
2008-07-28 22:03:13 -05:00
Slava Pestov
c6915b1023
Working on tuple slot propagation
2008-07-25 02:07:45 -05:00
Slava Pestov
0582f45fcb
Add more class algebra opeations
2008-07-22 01:27:52 -05:00
Slava Pestov
d0ae6bdb8f
Make array length foldable
2008-07-16 16:48:09 -05:00
Slava Pestov
817035099c
Fix erg's tuple definition bugs
2008-07-13 21:06:50 -05:00
Slava Pestov
966ef323bc
Expand allocations for simpler intrinsics
2008-07-13 03:53:34 -05:00
Slava Pestov
8160859c8b
Fixes
2008-07-12 13:12:45 -05:00
Slava Pestov
7ca3c2a878
Various minor compiler tweaks
2008-07-12 01:08:30 -05:00
Slava Pestov
2f560ffbe0
Fix typo
2008-07-11 17:46:57 -05:00
Slava Pestov
498986fe88
Fix tuple redefinition bug
2008-07-10 02:11:49 -05:00
Slava Pestov
5d9c1ea0a0
Documentation updates, rename unfold to produce
2008-07-10 01:00:27 -05:00
Slava Pestov
a8808b7087
Non-optimizing compiler now inlow inlines some primitives, this improves bootstrap time
2008-07-07 10:39:04 -05:00
Slava Pestov
78d24d5a5d
Fix unit test failures
2008-07-05 23:08:30 -05:00
Slava Pestov
1c92b20a9a
Fix two bugs
2008-07-05 20:37:28 -05:00
Slava Pestov
a8b826e8ed
Fix hang
2008-07-05 17:08:01 -05:00
Slava Pestov
48671cfca7
Fix classes.algebra unit tests
2008-07-05 04:42:58 -05:00
slava
3dcc04675b
Merge branch 'master' of git://factorcode.org/git/factor
2008-07-05 03:07:48 -05:00
slava
8321a41db0
Tweak to reduce image size; don't produce prototypes for tuples with all slots set to f
2008-07-05 03:07:25 -05:00
Slava Pestov
44c1c1f679
Move tuple-class to classes.tuple where it belongs
2008-07-05 00:59:39 -05:00
Slava Pestov
07d2dc58cd
Fix unit test
2008-07-04 01:32:38 -05:00
Slava Pestov
091484de98
Fix ERROR:, erg's mixin bug
2008-07-04 01:32:11 -05:00
Slava Pestov
ef2fddb1ec
Fix conflict
2008-07-03 16:46:21 -05:00
Eduardo Cavazos
c38298f0b5
classes.tuple: use sigma
2008-07-03 13:45:32 -05:00
Slava Pestov
e876349c51
Fix tests
2008-07-03 02:50:45 -05:00
Slava Pestov
72d9c040b4
Improved ERROR:
2008-07-03 02:47:29 -05:00
Slava Pestov
2831cb8d9b
Tweaking docs, change stage2 to load less stuff
2008-07-03 01:39:45 -05:00
Slava Pestov
aeb2b9d701
Fixing unit test failures
2008-07-02 15:57:38 -05:00
Slava Pestov
f7eecc7893
Move bit-arrays and float-arrays to extra
2008-07-02 02:03:30 -05:00
Slava Pestov
537269447c
Move mirrors out of the boot image
2008-07-02 00:20:01 -05:00
Slava Pestov
f8fd065fc5
Initial value for alien slots is a BAD-ALIEN
2008-07-01 16:33:45 -05:00
Slava Pestov
664631aa23
Fixing reshaping to work with type declaration
2008-07-01 16:16:02 -05:00
Slava Pestov
dea3604264
Remove some usages of deprecated features
2008-06-30 05:22:05 -05:00
Slava Pestov
fb8723bce1
Better optimizers for new, boa
2008-06-30 03:10:43 -05:00
Slava Pestov
f7b7001f39
BOA constructors now check types
2008-06-30 01:44:58 -05:00
Slava Pestov
3b41e31584
More tuple declaration work
2008-06-29 21:37:57 -05:00
Slava Pestov
0be00f03e6
Mirrors now check sot t slot types, support type coercion for setters, instance? now infers, better transform for 'new', more efficient 'case' where keys are all wrappers
2008-06-29 02:12:44 -05:00
Slava Pestov
b36e06d0d6
Builtinn types now use new slot accessors; tuple slot type declaration work in progress
2008-06-28 02:36:20 -05:00
Slava Pestov
3f520c3c79
Better error messages for when new or boa are applied to the wrong type
2008-06-26 20:47:36 -05:00
Slava Pestov
6e0d35e615
Split up huge parser vocabulary
2008-06-25 03:25:08 -05:00
Slava Pestov
045b657474
Move replicate into core; move selection sort into its own vocab; remove usages of and? and or? which are redundant now
2008-06-13 01:51:46 -05:00
Slava Pestov
685d53e264
Add gather word; faster 'implementors' using inverted index
2008-06-12 05:49:46 -05:00
Slava Pestov
c1509d5fe5
Fix more redefinition problems
2008-06-11 20:46:53 -05:00
Slava Pestov
80720cea0d
More redefinition fixes
2008-06-11 17:40:33 -05:00
Slava Pestov
c95851e34f
Bug fixes and cleanups
2008-06-11 02:58:38 -05:00
Slava Pestov
29fa4a8a54
assoc-find is no longer generic
2008-06-09 05:22:21 -05:00
Slava Pestov
ba8f1388ab
Fixing everything for mandatory stack effects
2008-06-09 02:14:14 -05:00
Slava Pestov
9dd5c9919f
Mandatory stack effect annotations
2008-06-08 15:32:55 -05:00
Slava Pestov
ec71ee0940
Bug fixes
2008-05-28 19:34:18 -05:00
Slava Pestov
a251556024
Add failing unit tests
2008-05-23 17:33:57 -05:00
Slava Pestov
14d04a37aa
Help lint fix
2008-05-11 02:12:36 -05:00
Slava Pestov
a42756abac
object is now an empty intersection
2008-05-11 01:37:37 -05:00
Slava Pestov
71cb0f9042
Disable some tests
2008-05-11 00:21:26 -05:00
Slava Pestov
dd08bdfdd1
Class algebra changes
2008-05-10 23:59:02 -05:00
Slava Pestov
53cda42d44
Add failing test
2008-05-10 18:09:10 -05:00
Slava Pestov
315110eb09
Working on intersection classes
2008-05-10 18:09:05 -05:00
Slava Pestov
0a3429810c
Fix classes.tuple unit test failures
2008-05-10 16:28:02 -05:00
Doug Coleman
fd531c1a31
rename butlast to but-last
2008-05-07 01:38:34 -05:00
Slava Pestov
9fd7b12534
Merge branch 'master' of git://factorcode.org/git/factor
2008-05-07 00:40:17 -05:00
Doug Coleman
01f20cf32d
update core to use butlast, butlast-slice
2008-05-06 12:36:49 -05:00
Slava Pestov
53832ccd2f
Fix
2008-05-06 09:01:28 -05:00
Slava Pestov
d1a3b64569
Fix class sorting again
2008-05-02 17:36:31 -05:00
Slava Pestov
5a29b2e273
Class linearization
2008-05-02 02:51:38 -05:00
Doug Coleman
e264537a1a
reverse the arguments of diff, assoc-diff
...
fix lots of usings
fix help-lint
2008-04-26 02:01:06 -05:00
Doug Coleman
15402ed1b4
core changes:
...
index* -> index-from
last-index* -> last-index-from
1 tail -> rest
1 tail-slice -> rest-slice
subset -> filter
prepose
find* -> find-from
find-last* -> find-last-from
before, after generic, < for integers
make between? work for timestamps
2008-04-25 23:12:44 -05:00
Slava Pestov
55f6636bc0
FFI string encoding conversion
2008-04-20 05:15:46 -05:00
Slava Pestov
3b795b6a07
Fix class< bug
2008-04-19 02:11:40 -05:00
Slava Pestov
7f89cb73a1
Fix bootstrap
2008-04-14 05:27:04 -05:00
Slava Pestov
70bec926d0
New convention for parametrized constructors: new-* instead of construct-*
2008-04-14 05:07:31 -05:00
Slava Pestov
d42ae9508f
Merge with erg's changes
2008-04-14 04:42:43 -05:00
Slava Pestov
5fda0ed040
Throw error if superclass is not a tuple class
2008-04-14 03:54:02 -05:00
Doug Coleman
4597cab824
move some words to sets
...
write docs for sets
started on usings..
2008-04-14 02:20:37 -05:00
Doug Coleman
2edd0fefc9
new -> new-sequence
...
construct-empty -> new
construct-boa -> boa
diff -> assoc-diff
union -> assoc-union
intersect -> assoc-intersect
2008-04-13 22:58:07 -05:00
Doug Coleman
30b75a797a
construct-boa -> boa
...
construct-empty -> new
2008-04-13 15:06:09 -05:00
Doug Coleman
bced4022e5
updating usages of cond/case
2008-04-11 12:53:22 -05:00
Slava Pestov
0f4ac3a8dc
Slot shadow warnings
2008-04-07 20:44:43 -05:00
Slava Pestov
d5667fd4b1
Better hashcodes
2008-04-05 07:35:51 -05:00
Slava Pestov
f7f43fa689
ABOUT: updates vocabulary
2008-04-05 07:00:09 -05:00
Slava Pestov
d046c3b614
Documentation updates
2008-04-04 19:40:08 -05:00
Slava Pestov
8f8d78d73d
Documentation updates
2008-04-04 09:57:06 -05:00
Slava Pestov
9e227d394e
Remove redundant code
2008-04-04 05:09:58 -05:00
Slava Pestov
b040d4d033
Convert prettyprinter to inheritance
2008-04-04 04:33:35 -05:00
Slava Pestov
82fc8f18db
Converting core to use inheritance
2008-04-04 03:46:30 -05:00
Slava Pestov
ef4046cda9
Converting code to use inheritance
2008-04-04 00:33:06 -05:00
Slava Pestov
f2440381cd
More documentation updates
2008-04-03 21:29:49 -05:00
Slava Pestov
cc2f512287
New classes.builtin vocab
2008-04-03 21:19:20 -05:00
Slava Pestov
8245d65a6c
Documentation updates
2008-04-03 19:08:34 -05:00
Slava Pestov
16377be935
Use call-next-method
2008-04-03 05:57:20 -05:00
Slava Pestov
54265a9f4c
Final inheritance fixes
2008-04-03 04:58:37 -05:00
Slava Pestov
93d9722a6b
Fix class resetting
2008-04-03 00:21:53 -05:00
Slava Pestov
192471badb
Merge branch 'master' of git://factorcode.org/git/factor
2008-04-02 21:31:50 -05:00
Slava Pestov
5346e1899f
Working on call-next-method, and identity-tuple
2008-04-02 21:27:49 -05:00
Slava Pestov
8fde3fb914
More inheritance debugging
2008-04-02 18:50:21 -05:00
Doug Coleman
7ec68e0aa7
singleton docs
2008-04-02 16:32:34 -05:00
Doug Coleman
47b54b1307
add singletons to core
2008-04-02 15:41:29 -05:00
Doug Coleman
e62c3c323c
fix unit test
2008-04-02 13:13:56 -05:00
Doug Coleman
11feb563eb
move singletons to core
2008-04-02 13:11:55 -05:00
Slava Pestov
7a596ce004
Debugging inheritancE
2008-04-02 02:44:10 -05:00
Slava Pestov
f96a43c42d
Getting ready to drop in new dispatch code
2008-04-02 00:45:30 -05:00
Slava Pestov
fa8b578370
Rewriting method dispatch to support inheritance
2008-04-02 00:28:07 -05:00
Eduardo Cavazos
cc5ddd8d78
Resolve more add/add* items
2008-03-31 20:05:06 -06:00
Eduardo Cavazos
4f07aefc97
Merge branch 'master' of git://factorcode.org/git/factor
...
Conflicts:
core/classes/tuple/tuple.factor
2008-03-31 19:42:21 -06:00
Eduardo Cavazos
aa40350aa7
replace add* and add with prefix and suffix
2008-03-31 18:18:05 -06:00
Slava Pestov
8f0530daa6
More inheritance fixes
2008-03-31 03:40:27 -05:00
Slava Pestov
75497d7212
Add another unit test
2008-03-31 01:26:09 -05:00