Commit Graph

16279 Commits (aa71f2709448b7c598862d7aff8bec265a86a4fa)

Author SHA1 Message Date
Doug Coleman aa71f27094 add docs for if-zero etc, add docs for 10^ 2009-08-11 18:45:01 -05:00
Doug Coleman 03f38f64e0 fix project euler 151 and add a unit test 2009-08-11 18:22:44 -05:00
Doug Coleman b5818bd284 Merge branch 'master' of git://factorcode.org/git/factor 2009-08-11 18:16:30 -05:00
Doug Coleman e1bdd33156 use if-zero in a few more places 2009-08-11 18:15:53 -05:00
Doug Coleman 8f88467ad3 fix sgn docs 2009-08-11 18:15:24 -05:00
Doug Coleman 9e0caf641b add 10^ to math.functions and update usages 2009-08-11 18:00:24 -05:00
Doug Coleman 1797f389f8 add if-zero/when-zero/unless-zero to core/ and update usages 2009-08-11 17:59:40 -05:00
Slava Pestov 69c7c79dda Merge branch 'master' of git://factorcode.org/git/factor 2009-08-11 17:26:02 -05:00
Slava Pestov 88f28a7245 math.intervals: fix interval-rem 2009-08-11 16:49:28 -05:00
Doug Coleman 263527eca0 Merge branch 'master' of git://factorcode.org/git/factor 2009-08-11 16:19:43 -05:00
Doug Coleman a4671e6a09 fix docs 2009-08-11 15:35:57 -05:00
Doug Coleman 99dbfb90af don't capitalize the first letter of each word in math.text.english 2009-08-11 15:34:11 -05:00
Slava Pestov 5f0390d83b alien.complex: fix tests 2009-08-11 14:07:33 -05:00
Philipp Brüschweiler 3dc33b67a9 various doc fixes 2009-08-11 16:58:47 +02:00
Brad Christensen 4b3ab95660 A number of documentation fixes.
* Short-circuit combinators now show correct stack effect for quots
 * Groups and Clumps unchecked examples corrected, made runnable in listener
 * Class operations had duplicate link to class-types
 * Protocol slots readability fixed
 * Tuple word property for "tuple-layout" corrected to "layout"
 * cond>quot sentence started in lowercase
 * Method precedence code example missing stack effect for GENERIC:, M: integer explain changed to detail an integer
 * Motivation for default streams readability
 * Default input and output streams duplicate readln link removed from output stream words section
 * Looping combinators do description clarified
 * Make philosophy missing space
 * Linear order protocol duplicate after? link removed
 * Parsing words readability fix
 * Copied note regarding with-compilation-unit from define to define-declared and define-inline
2009-08-10 23:34:25 -07:00
Slava Pestov b9851a1abb Merge branch 'emacs' of http://git.hacks-galore.org/jao/factor 2009-08-10 16:20:14 -05:00
Slava Pestov c816e5a483 Merge branch 'master' of git://github.com/Blei/factor 2009-08-10 16:18:19 -05:00
Slava Pestov e88dcb85ef alien: need to differentiate between the type of the result before and after boxing; the former is used by propagation for #alien-invoke nodes and the latter is used by specialized arrays. This fixes FFI unit test failures 2009-08-10 16:17:33 -05:00
Philipp Brüschweiler 18240b0219 misc small documentation fixes, some fixes for factor.vim, changed permissions of vm/* to 644 2009-08-10 21:33:07 +02:00
Slava Pestov e115886921 benchmark.yuv-to-rgb: New benchmark, based on Chris Double's old ogg.player code 2009-08-10 01:17:07 -05:00
Slava Pestov 7956e63fc2 compiler.tree.propagation: be more careful with intervals, ensuring that the inferred interval of a value is a subset of the value class's interval. This improves accuracy, for example [ >fixnum 1 + >fixnum most-positive-fixnum <= ] constant-folds to true 2009-08-10 01:16:49 -05:00
Slava Pestov ea33afa4f1 Merge branch 'master' of git://factorcode.org/git/factor 2009-08-09 16:31:03 -05:00
Slava Pestov 55d1b76ad7 compiler.tree.escape-analysis: if the output of an #introduce node has an immutable tuple class type declaration, and it is not passed to any subroutine calls, or returned from the word, then unbox it. This speeds up vector arithmetic words on specialized arrays, because the specialized array is unboxed up-front, eliminating an indirection on every loop iteration 2009-08-09 16:29:21 -05:00
Slava Pestov f45d80374c alien.structs: struct-type now has a class slot; fix specialized complex-float/double arrays 2009-08-09 16:10:11 -05:00
Slava Pestov 5dd868299b tools.deploy.shaker: strip out specialized vector words 2009-08-09 04:48:44 -05:00
Slava Pestov 74e8028316 Rename some files in misc/Factor.tmbundle since Windows doesn't allow : in file names 2009-08-09 04:47:37 -05:00
Slava Pestov 12ab2b9e9d _gc instruction doesn't need slot to hold GC root area size, since that's just tagged-values>> length 2009-08-09 03:08:13 -05:00
Slava Pestov 9b4ffd65d3 math.vectors.specialization: first attempt at some call site splitting for vector ops. Specialized array types generate customized variants of all vector words, if input types are known at compile time, a call to the specialized version is inserted 2009-08-09 03:07:33 -05:00
Slava Pestov ca2d989547 compiler.cfg.linearization: change order to fit older unit tests 2009-08-08 23:06:57 -05:00
Slava Pestov 67320eb051 tools.test: flush the output stream 2009-08-08 23:03:53 -05:00
Slava Pestov 638f5b6579 More accurate interval inference for mod, rem, and propagation can now infer intervals in the case where a value might be f. so, [ [ 127 bitand ] [ drop f ] if dup [ 0 >= ] [ not ] if ] now constant-folds down to 't'! 2009-08-08 23:03:45 -05:00
Slava Pestov 26531ddf8b More accurate interval-mod and interval-rem 2009-08-08 22:01:12 -05:00
Slava Pestov f3903e2ac3 compiler.cfg.two-operand: sometimes we can eliminate a copy in the x = y <op> y case 2009-08-08 20:03:42 -05:00
Slava Pestov 38ef8adde0 compiler.cfg.representation: OK to unbox output of ##load-reference globally 2009-08-08 20:03:13 -05:00
Slava Pestov 88d15dfbea compiler.cfg: new system to track when results of analyses need to be recomputed (reverse post order, linear order, predecessors, dominance, loops). Passes can now call needs-predecessors, needs-dominance, needs-loops at the beginning, and cfg-changed, predecessors-changd at the end. Linearization order now takes loop nesting into account, and linear scan now uses linearization order instead of RPO. 2009-08-08 20:02:56 -05:00
Slava Pestov 0eebb20780 compiler.cfg.ssa.liveness: fix tests 2009-08-08 16:15:45 -05:00
Slava Pestov 4d289e0844 compiler.cfg.representations: emit-conversion should not be private since CSSA construction uses it 2009-08-08 04:13:30 -05:00
Slava Pestov 2d575d7ec9 compiler.cfg: virtual registers are integers now, and representations are stored off to the side. Fix bug in representation selection that would manifest if a value was used as a float and a fixnum in different branches; cannot globally unbox float in this case 2009-08-08 04:02:18 -05:00
Slava Pestov 4921b819e0 compiler.cfg.representations: new pass to make global unboxing decisions, relies on new compiler.cfg.loop-detection pass for loop nesting information 2009-08-08 00:24:46 -05:00
Slava Pestov edecc71380 classes.intersection: make flatten-class more accurate. It is still not perfect, but it fixes the case where a generic word has a method on a tuple class, and another method on an intersection of a mixin with another tuple classes 2009-08-07 22:30:57 -05:00
Slava Pestov f6542ba7cc Merge branch 'master' of git://factorcode.org/git/factor 2009-08-07 17:45:09 -05:00
Slava Pestov 4d2160799f Split off the notion of a register representation from a register class 2009-08-07 17:44:50 -05:00
Slava Pestov 877e117364 help.tutorial: minor tweaks 2009-08-07 14:54:51 -05:00
Sam Anklesaria fd93f105c5 removed basis dependent vocabs 2009-08-06 21:01:51 -05:00
Slava Pestov 6d32e767e9 file-trees: load fix 2009-08-06 16:49:02 -05:00
Slava Pestov 2e920d6243 Revert basis UI gadget changes 2009-08-06 16:46:48 -05:00
Sam Anklesaria 186062493c fixed ui.gadgets.tables multi-selection bug 2009-08-06 16:31:35 -05:00
Sam Anklesaria b3bea8c16f Merge branch 'master' of git://factorcode.org/git/factor 2009-08-06 15:40:57 -05:00
Sam Anklesaria 1dc6cb5617 magic scrollers hide sliders when not needed 2009-08-06 15:20:10 -05:00
Sam Anklesaria c713721fb7 merged control extras into basis 2009-08-06 15:19:28 -05:00