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