Commit Graph

2824 Commits (ed8cef96b4eb0415ada931521a628b4deb8da593)

Author SHA1 Message Date
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