Slava Pestov
9d207cc913
Fix regression when forgetting classes
2010-01-30 09:28:55 +13:00
Slava Pestov
7c9250d5b2
Minor documentation updates
2010-01-30 09:28:54 +13:00
Slava Pestov
4f1ba2986a
classes.mixin: privacy please
2010-01-30 09:28:53 +13:00
Slava Pestov
ed7f8341e5
More changes so that mixins trigger even less recompilation
2010-01-30 09:28:53 +13:00
Slava Pestov
c591988707
classes.algebra: couple more tests
2010-01-30 09:28:53 +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
37e03d2e01
Trying to fix mixin semantics
2010-01-30 09:28:51 +13:00
Doug Coleman
5c0cf72b1e
try-find is just attempt-all. oops
2010-01-28 23:28:11 -06:00
Doug Coleman
4f8f1c2037
add some unit tests for try-find
2010-01-28 23:12:31 -06:00
Doug Coleman
b96aa5b025
add try-find for random.windows
2010-01-28 22:44:31 -06:00
Slava Pestov
1e9dc571f2
Fix and clean up stage1 bootstrap
2010-01-28 17:30:35 +13:00
Slava Pestov
0fad658662
core: fix bad interaction between stage1 bootstrap and manifest update code
2010-01-28 03:02:54 +13:00
Slava Pestov
95f2446413
vocabs.parser: a couple of fixes
2010-01-27 23:20:17 +13:00
Slava Pestov
421a244281
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
871eb5fd74
vocabs.parser: The manifest is now a definition observer, and updates itself when compilation units complete. This helps keep listener's search path up to date if vocabularies and words are renamed, defined, and undefined
...
- This makes forget-vocab more reliable in the listener
- It also fixes the problem of listener sessions where QUALIFIED: was used referring to outdated words if the vocabulary in question was reloaded
2010-01-27 20:49:26 +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
Daniel Ehrenberg
8f4bd0e7df
Merge branch 'master' of git://factorcode.org/git/factor
2010-01-26 14:14:05 -06:00
Daniel Ehrenberg
8837fe5792
Tests for propagation additions; making fixnum-bit? inline
2010-01-25 20:15:17 -06:00
Slava Pestov
34f40c3a72
Various documentation improvements
2010-01-26 01:01:12 +13:00
Doug Coleman
942b907890
move sequence-hashcode-step to private
2010-01-22 16:30:22 -06:00
Doug Coleman
91d816cca7
move (accumulate) to sequences.private
2010-01-22 15:04:13 -06:00
Doug Coleman
8ae200d419
Rename accumulator to collector, pusher to selector
2010-01-22 15:00:53 -06:00
Doug Coleman
5bb6cc9471
Fix image save on Windows
2010-01-22 12:59:36 -06:00
Doug Coleman
9502f6f091
Save images to a temporary file first, then call MOVE_FILE to avoid writing incomplete and truncated images.
2010-01-22 12:59:20 -06:00
Daniel Ehrenberg
b24d8f93da
Merge branch 'master' of git://factorcode.org/git/factor
2010-01-20 00:16:55 -06:00
Daniel Ehrenberg
8b04f0f417
Merge branch 'master' of git://factorcode.org/git/factor
...
Conflicts:
basis/compiler/tree/propagation/transforms/transforms.factor
2010-01-20 00:15:55 -06:00
Slava Pestov
fc5029aa15
kernel: remove bogus test
2010-01-20 19:13:58 +13:00
Daniel Ehrenberg
2e5f16da00
Adding compiler transforms in propagation
2010-01-20 00:10:49 -06:00
Slava Pestov
952a0784a7
vm: remove vm-ptr primitive
2010-01-20 17:06:49 +13:00
Slava Pestov
88004434ec
vm: remove primitive table, non-optimizing compiler now looks up primitives with dlsym()
2010-01-19 20:00:33 +13:00
Slava Pestov
98f3eae5fe
Fix performance regression in vector ops on specialized arrays, tweak definition of <slice> and 2map-reduce to generate fewer conditionals
2010-01-19 17:48:10 +13:00
Slava Pestov
0165daf56c
Stop wearing monocle and use the term "entry point" instead of "XT" throughout VM and compiler; also remove two unused relocation types
2010-01-18 20:54:00 +13:00
Slava Pestov
b34f660e45
slots: fix declaration unit test
2010-01-17 00:30:36 +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
36dd55f4bc
io.buffers: fix buffer-until for iota (reported by Sascha Matzke)
2010-01-16 18:44:24 +13:00
Slava Pestov
bf0de9f7ee
Help lint fixes for iota
2010-01-15 17:04:14 +13:00
Doug Coleman
4895967acf
Merge branch 'master' of git://factorcode.org/git/factor
...
Conflicts:
core/sequences/sequences-docs.factor
2010-01-14 17:22:02 -06:00
Doug Coleman
37d4e0c1eb
Fix a few integers-as-sequences in docs
2010-01-14 17:20:43 -06:00
Slava Pestov
21dc4e59a0
math.parser: fix docs -- maximum radix is 16 not 36
2010-01-15 08:36:40 +13:00
Slava Pestov
e5044c38bc
parser: make 'CONSTANT: foo<newline>3' work in the listener
2010-01-15 08:30:26 +13:00
Slava Pestov
206e03ee50
generic, sequences: update docs for iota
2010-01-15 08:23:27 +13:00
Doug Coleman
7521807b55
random is generic now -- iota random -> random
2010-01-14 12:48:57 -06:00
Slava Pestov
880fb747fc
Removing integers-as-sequences
2010-01-15 07:15:33 +13:00
Slava Pestov
005db61ad6
Rework min and max so that behavior with floats and NaNs is consistent between generic arithmetic and open-coded float intrinsics
2010-01-13 22:20:16 +13:00
Slava Pestov
790674cf89
Rename kernel.private:getenv/setenv to special-object/set-special-object to mirror recent renaming on the VM side
2010-01-13 18:08:18 +13:00
Slava Pestov
e5a10469a2
alien: fix help lint
2010-01-07 20:54:27 +13:00
Slava Pestov
39ef6544f2
alien: document alien-assembly
2010-01-07 17:57:48 +13:00
Slava Pestov
1e2c0327ee
Add alien-assembly form for inline assembler, works like alien-invoke except calls a user-supplied quotation instead of generating a subroutine call. Replaces FPU status control, SSE detection and read timestamp routines in vm/cpu-x86.*S
2010-01-07 17:39:22 +13:00
Slava Pestov
97fc47814f
compiler.units: fix faulty unit test
2010-01-06 23:52:14 +13:00
Slava Pestov
72311506d2
vm: ensure that non-optimized calls to generic words which have not yet been compiled can still work
2010-01-06 23:49:14 +13:00
Slava Pestov
d2baa6dde5
vm: move c_to_factor, lazy_jit_compile_impl, throw_impl, set_callstack assembly routines into non-optimizing compiler for x86-64
2010-01-06 15:47:36 +13:00
Slava Pestov
9399a68786
Change how non-volatile register preservation is done in alien callbacks, with the aim of fixing callbacks on PowerPC, and to eventually eliminate assembly code from VM
...
- Simplify calculation of offset in relocation table
- Open-code %alien-callback
- Remove magic_frame hack from context objects
- Move magical return instruction from optimizing compiler backend into callback entry stub
2010-01-03 01:11:51 +13:00
Slava Pestov
042a074ac6
continuations: remove outdated comment
2009-12-28 12:42:25 +13:00
Slava Pestov
fc2f05032b
kernel: fix set-callstack docs
2009-12-28 12:41:45 +13:00
Slava Pestov
c89958ddd5
kernel: fix stack effect declarations of call-clear and set-callstack, and add a unit test for call-clear
2009-12-26 15:38:01 +13:00
Slava Pestov
aaf98a307a
primitives.factor: move call-clear into kernel.private since its unsafe
2009-12-26 15:27:39 +13:00
Slava Pestov
9a149a47ab
Merge branch 'master' of git://factorcode.org/git/factor
2009-12-15 07:21:17 -05:00
Slava Pestov
742126cadc
threads, io.streams.c: cleanups
2009-12-15 07:20:41 -05:00
Slava Pestov
31a260b74c
vm: big overhaul of non-optimizing compiler
...
- change some primitives into sub-primitives: fixnum+ fixnum- fixnum* inline-cache-miss inline-cache-miss-tail
- rename some relocation types for clarity
- some other minor re-organizations and cleanups
2009-12-15 07:20:09 -05:00
Doug Coleman
76261256da
triyng to rice crc32 a bit
2009-12-13 02:03:06 -06:00
Slava Pestov
2a30ef7dc9
sequences: fix map-reduce and 2map-reduce docs, reported by Ben Schlingelhof
2009-12-12 15:16:11 -05:00
Doug Coleman
12127bbe60
link pusher and accumulator in docs
2009-12-07 16:26:24 -06:00
Joe Groff
ebcaaa0d64
Merge branch 'master' into simd-cleanup
2009-11-26 16:14:46 -08:00
Slava Pestov
08b6ebc7fa
Factor source files should not be executable
2009-11-21 17:50:43 -06:00
Slava Pestov
49abe313a3
Clean up startup/shutdown hook code
2009-11-20 00:57:49 -06:00
Doug Coleman
ee7f0ac5e4
fix stack effects for nanosseconds, update io backends for nanos
2009-11-19 04:51:47 -06:00
Slava Pestov
8be89ccccc
combinators: fix typo in docs
2009-11-19 02:08:14 -06:00
Doug Coleman
ca39b38303
remove system-millis and update vocabs to use system-micros or nano-count
2009-11-18 20:56:09 -06:00
Doug Coleman
972079902e
fix system docs
2009-11-18 18:34:16 -06:00
Doug Coleman
595c8eb8b1
document nano-count, move monotonic-clock to hell
2009-11-18 16:33:10 -06:00
Doug Coleman
addb1c90bb
rename millis to system-millis, micros to system-micros, add nano-count
2009-11-18 15:58:48 -06:00
Doug Coleman
1861dd2705
initial commit to nanos branch to replace micros
2009-11-18 04:20:05 -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
Doug Coleman
3323072613
Merge branch 'master' into startup
...
Conflicts:
core/bootstrap/primitives.factor
vm/run.hpp
2009-11-15 02:52:50 -06:00
Joe Groff
993631e44c
Merge branch 'master' of git://factorcode.org/git/factor into simd-cleanup
...
Conflicts:
basis/math/vectors/simd/functor/functor.factor
2009-11-14 21:02:39 -06:00
Slava Pestov
7f7b0c49be
hashtables: fix indentation
2009-11-14 02:01:30 -06:00
Slava Pestov
f82607f10b
Merge branch 'master' of git://factorcode.org/git/factor
2009-11-14 01:59:32 -06:00
Slava Pestov
547abb5603
Unit test fixes
2009-11-13 23:00:50 -06:00
Doug Coleman
e3482fc1df
Merge branch 'master' of git://factorcode.org/git/factor
2009-11-13 15:03:16 -06:00
Slava Pestov
54049829dd
Bootstrap cleanups
2009-11-13 08:05:02 -06:00
Slava Pestov
ab7583ac37
Fix bootstrap
2009-11-13 07:55:47 -06:00
Slava Pestov
5c7163d190
Fix another problem with call( inline caching
2009-11-13 07:17:00 -06:00
Slava Pestov
b201cc4a6f
Fixing call( inline caching
2009-11-13 04:32:33 -06:00
Slava Pestov
eb165a5450
Instead of bumping the definition counter every time in the VM, bump it only if stack effects changed or macros were redefined
2009-11-13 03:52:14 -06:00
Slava Pestov
820e3c41ce
sequences: inline a couple of words
2009-11-13 03:01:28 -06:00
Slava Pestov
aa8feb7bdd
classes.algebra: output cleaner anonymous unions and intersections
2009-11-13 03:01:22 -06:00
Doug Coleman
b1e83cdb33
update more 8bit encoding usages
2009-11-12 18:36:47 -06:00
Doug Coleman
995952389b
use surround/glue instead of 3append
2009-11-12 03:01:09 -06:00
Slava Pestov
3b75114015
Fixing test failures
2009-11-11 02:40:24 -06:00
Slava Pestov
68f3087c1c
Faster identity-hashcode primitive; fast path now opencoded by the compiler
2009-11-11 02:27:19 -06:00
Slava Pestov
4fe132df8d
Minor cosmetic fixes
2009-11-10 21:48:00 -06:00
Slava Pestov
4168ffbcee
New identity-hashcode primitive
2009-11-10 21:18:54 -06:00
Slava Pestov
0aa3f19f68
io.pathnames: document resource: and vocab:
2009-11-10 18:57:46 -06:00
Slava Pestov
004b92e175
classes.algebra: cleanup
2009-11-10 17:41:47 -06:00
Slava Pestov
16d70d32f2
Merge branch 'master' of git://github.com/Blei/factor
2009-11-09 00:57:41 -06:00
Joe Groff
96060c32e9
Merge branch 'master' into simd-cleanup
2009-11-08 21:54:53 -06:00
Slava Pestov
8f9d4e3d2c
stack-checker: split off stack-checker.dependencies from stack-checker.state
2009-11-08 20:34:46 -06:00
Slava Pestov
a4b760e9ad
generic, words: update unit tests for deopt data structure change
2009-11-08 19:44:04 -06:00
Slava Pestov
5dc20ef385
Use a more compact representation for "compiled-uses" and "compiled-generic-uses" word-props; reduces image size
2009-11-08 06:08:04 -06:00
Joe Groff
3718297fd9
pronouns deserve antecedents
2009-11-07 23:15:30 -06:00
Joe Groff
b09b0f0686
Merge branch 'master' into simd-cleanup
2009-11-07 22:26:09 -06:00
Philipp Brüschweiler
4d185704d6
sequences: rename virtual-seq to virtual-exemplar
2009-11-07 00:06:26 +01:00
Joe Groff
f427c16cb3
factor "split-when" (split on predicate) from "split"
2009-11-06 16:29:33 -06:00
Joe Groff
c967641f5c
actually, no, it doesn't provide warnings for references to forgotten words
2009-11-06 15:25:33 -06:00
Slava Pestov
614dbfd14c
math.integers: fix help lint on 32-bit
2009-11-06 04:52:52 -06:00
Slava Pestov
b46c055699
math: fix test failures on 32-bit
2009-11-06 04:50:41 -06:00
Slava Pestov
f4e5b171b1
memory: fix help lint
2009-11-06 04:17:57 -06:00
Slava Pestov
ca2148fbf6
generic.single: simplify stack shuffling
2009-11-06 04:15:46 -06:00
Slava Pestov
f07bb13e88
Fix some test failures
2009-11-06 02:35:43 -06:00
Joe Groff
f780bbddc3
deprimitivize tuck and put it to pasture
2009-11-05 22:47:05 -06:00
Joe Groff
078e999e37
Merge branch 'master' of git://factorcode.org/git/factor
2009-11-05 22:23:21 -06:00
Slava Pestov
065dac3736
vm: simpler object space implementation. begin-scan/next-object/end-scan primitives replaced by a single all-instances primitive
2009-11-05 21:49:03 -06:00
Joe Groff
25d384abe4
remove non-primitive-related uses of tuck from basis
2009-11-05 17:03:24 -06:00
Joe Groff
8399f6c58e
remove spin from core and retire it to basis/shuffle
2009-11-05 15:40:48 -06:00
Joe Groff
a279b360eb
Merge branch 'master' into simd-cleanup
...
Conflicts:
basis/math/vectors/simd/functor/functor.factor
2009-11-05 11:27:08 -06:00
Slava Pestov
40a82aba19
tools.time: overhaul
2009-11-05 01:07:59 -06:00
Slava Pestov
d0a784d61c
compiler: update unit tests for 4-bit tag change
2009-11-03 21:40:29 -06:00
Slava Pestov
2bc23fd67c
slots: another bootstrap fix
2009-11-02 20:28:43 -06:00
Slava Pestov
3f39d6d1ca
vm: faster immediate_p()
2009-11-02 20:21:21 -06:00
Slava Pestov
0f84d38a83
core: bootstrap fixes
2009-11-02 20:21:10 -06:00
Joe Groff
4da91ee689
genericize vector ops
2009-11-02 14:21:19 -06:00
Slava Pestov
d65296b334
vm: 4 bit tags, new representation of alien objects makes unbox-any-c-ptr more efficient (work in progress)
2009-11-02 04:25:54 -06:00
Slava Pestov
55eb76f695
Merge branch 'master' into new_gc
2009-11-01 22:17:27 -06:00
Joe Groff
81025d7095
move define-inline-method from classes.struct.private to generic.parser
2009-11-01 22:10:28 -06:00
Joe Groff
0683045cfd
new, faster one-pass number parser
2009-11-01 01:59:12 -05:00
Joe Groff
f1d5f6974b
remove dangling PRIVATE> from math.parser
2009-11-01 00:42:25 -05:00
Joe Groff
045b85d033
rearrange destructive sequence ops docs
2009-10-31 16:53:39 -05:00
Joe Groff
4ff657e9f6
touch up quotation documentation
2009-10-31 16:40:10 -05:00
Joe Groff
947de7b0cd
clean up cleave/spread/apply combinator articles
2009-10-31 15:41:34 -05:00
Joe Groff
03c1c916e0
might want to accurately divide large negative fixnums too
2009-10-31 12:10:29 -05:00
Joe Groff
aab3914453
use bignum/f to get accurate division of fixnums >= 2^53 on 64-bit platforms
2009-10-31 12:06:56 -05:00
Slava Pestov
761978b662
Merge optimizations from master branch
2009-10-31 03:02:19 -05:00
Joe Groff
451c88c935
Merge branch 'master' of git://factorcode.org/git/factor
2009-10-30 22:02:15 -05:00
Joe Groff
d46f80d8cd
remove useless slot types from copy-state
2009-10-30 22:01:51 -05:00
Slava Pestov
5da0b1a22e
Merge branch 'master' into new_gc
2009-10-30 21:04:37 -05:00
Slava Pestov
d100bb355b
Merge branch 'master' of git://factorcode.org/git/factor
2009-10-30 21:00:26 -05:00
Slava Pestov
388157a52a
growable: M\ growable contract should be declared inline, fixes performance regression on stack benchmark
2009-10-30 20:53:47 -05:00
Joe Groff
d4b6b9e54b
clean up copy implementation for real
2009-10-30 19:39:46 -05:00
Joe Groff
eecef661cf
exile roll and -roll to basis/shuffle and mark them deprecated
2009-10-30 17:11:45 -05:00
Joe Groff
967d70df35
add inlinable assoc methods on f
2009-10-30 15:22:14 -05:00
Joe Groff
38d662c29a
eliminate roll/-roll from core
2009-10-30 13:36:15 -05:00
Slava Pestov
051dcb6849
Merge branch 'master' into new_gc
2009-10-30 03:03:05 -05:00
Joe Groff
11dd8720f4
Merge branch 'master' of git://factorcode.org/git/factor
2009-10-30 00:42:37 -05:00
Joe Groff
0f55b8b4c5
start cleaning up internal implementation of copy (needs more work)
2009-10-30 00:42:21 -05:00
Joe Groff
15b03d3e1a
shun ugly shuffle words in the docs
2009-10-29 19:42:55 -05:00
Joe Groff
11a090d84c
remove inaccurate comment from sequences docs example
2009-10-29 15:34:38 -05:00
Doug Coleman
1ee8c8f5eb
sigma -> map-sum
2009-10-29 14:34:04 -05:00
Joe Groff
2986ad1258
clean up typos and improve synergy between locals and namespaces docs
2009-10-29 14:08:45 -05:00
Joe Groff
bc2476294d
update the article on shuffle words to hide away the more troublesome ones
2009-10-29 14:07:46 -05:00