John Benediktsson
b571a42679
Use -unsafe words with pair methods.
2013-03-07 10:47:23 -08:00
John Benediktsson
1ae04f1247
math.statistics: adding z-score.
2013-02-07 15:50:34 -08:00
Doug Coleman
18b7960e09
math.statistics: Add docs for collect-by and collect-index-by.
2013-02-05 09:35:51 -08:00
John Benediktsson
422ccf9901
math.functions: adding "round-to".
2013-01-30 09:41:21 -08:00
Doug Coleman
fb60673840
math.vectors: Don't use macro with locals and cond in vif. Stack-checker/locals/macros/smart-combinators all need some work (a rewrite?), but meanwhile don't let it get in the way. Add tests.
2013-01-03 09:49:31 -08:00
Doug Coleman
2ab5607670
math.vectors: Fix spacing.
2013-01-02 00:09:21 -08:00
John Benediktsson
82dc0bf045
math.statistics: just use accumulate for now.
2012-12-04 08:56:21 -08:00
Doug Coleman
516549b52c
basis: Try to fix the build. My profiler is hanging, but I can't figure out why. See if the build farm has the same is
...
sue.
2012-11-27 12:47:44 -06:00
Doug Coleman
6e48f8ab15
math.statistics: Add a variant of histogram that can see the sequence index.
2012-11-17 12:39:54 -08:00
Doug Coleman
d31105813b
math.statistics: Add back std as sample-std.
2012-11-15 08:27:41 -08:00
Doug Coleman
2ada02726b
math.statistics: Make you think about which std you want--population or sample. Hopefully use the right words everywhere.
2012-11-07 22:53:53 -08:00
Doug Coleman
a4e55a3eee
math.statistics: Rename full-* to population-*. Full, while somewhat descriptive of using the entire dataset, is not a technical term, while population is used in Mathematica and stats books.
2012-11-07 22:53:52 -08:00
Doug Coleman
401dd47335
math.matrices: Add m+n, m-n, n+m, n-m, words.
2012-11-07 22:53:52 -08:00
John Benediktsson
1e413edf3a
math.statistics: rename full-* to population-*.
2012-11-06 07:16:20 -08:00
John Benediktsson
23fc7b3eb9
math.statistics: add some padding in the docs (looks better).
2012-10-25 21:01:17 -07:00
John Benediktsson
71da857f43
math.statistics: add other cumulative words to help article.
2012-10-25 16:30:31 -07:00
Doug Coleman
b867a248a2
math.statistics: Add cum-count, cum-sum0, cum-map0. Add docs.
2012-10-25 16:13:25 -07:00
John Benediktsson
013160df9a
change some "2drop 2drop" to "4drop".
2012-10-23 12:21:30 -07:00
John Benediktsson
eaa19eb36f
math.primes.erato: minor performance improvements.
2012-10-23 10:49:45 -07:00
Doug Coleman
4c4d186ae4
math.matrices: Trying to flesh out the matrices vocabulary a bit.
2012-10-22 09:47:36 -07:00
Doug Coleman
923f3592c8
math.statistics: Add ddof (delta degrees-of-freedom) to easily calculate population (full) and unbiased (sample) statistics.
2012-10-22 09:47:35 -07:00
Doug Coleman
7906632952
math.matrices: Add some combinators for iterating over matrices. Add covariance matrix.
2012-10-22 09:47:35 -07:00
Doug Coleman
b23e52f532
math.matrics: Add some combinators and indexing words to math.matrices.
2012-10-22 09:47:35 -07:00
John Benediktsson
13f101bd2b
math.statistics: empty-sequence is silly.
2012-09-26 17:09:23 -07:00
John Benediktsson
7fb8db2e74
math.statistics: adding a normalized-histogram word.
2012-09-26 08:39:11 -07:00
John Benediktsson
6072e58db3
math.statistics: remove probabilities word, not really needed.
2012-09-26 08:32:30 -07:00
John Benediktsson
ca69afec31
math.statistics: use "cumulative map" as base of all cumulative words.
2012-09-25 22:27:42 -07:00
John Benediktsson
a283782abe
math.statistics: some fixes to entropy, adding maximum-entropy and normalized-entropy.
2012-09-25 20:17:34 -07:00
Doug Coleman
8e8712efab
math.bitwise: Fix bit-range and test it.
2012-09-19 17:03:13 -07:00
Doug Coleman
19b6ae71d5
math.bitwise: Fix on-bits for negative values, which also fixes bits. Add unit tests.
2012-09-19 16:39:22 -07:00
Doug Coleman
f0464fa097
math.bitwise: Inline bit-range
2012-09-19 16:15:14 -07:00
Doug Coleman
2735d3a5d7
math.bitwise: Add bit-range
2012-09-19 15:44:19 -07:00
Alex Vondrak
4c53c971c1
compiler.cfg.gvn.math: missed some availability checks that were causing math.vectors.simd.tests to fail (issue #671 )
2012-09-18 00:07:10 -07:00
Doug Coleman
2282007334
math.ratios: Add unit tests for bug #668 .
2012-09-11 08:16:25 -07:00
John Benediktsson
e84e508256
math.ratios: speed up some operations on ratios.
2012-09-10 19:53:25 -07:00
John Benediktsson
c86b2d2161
math.combinatorics: factorial could be memoized...
2012-09-05 11:02:38 -07:00
Doug Coleman
d2317c71f5
math.statistics: add rank-values
2012-09-04 18:52:38 -07:00
John Benediktsson
8ed541b26b
math.ratios: slight fix to M\ ratio recip for negative ratios.
2012-09-02 10:08:00 -07:00
John Benediktsson
009fb4249e
math: faster recip for integers and ratios.
2012-09-02 09:47:31 -07:00
John Benediktsson
b39547a866
math.bitwise: some cleanup of zero handling.
2012-08-31 15:58:54 -07:00
John Benediktsson
3836d57321
math.functions: faster (integer) m^n.
2012-08-31 15:10:48 -07:00
Doug Coleman
6c9a6122de
math.vectors: Implement infinity p-norm and special-case l1-norm and l2-norm.
2012-08-30 16:47:45 -07:00
Doug Coleman
27f445d505
assocs: Add sift-keys and sift-values. Remove three other implementations
...
of sift-values and use the new one.
2012-08-23 22:36:10 -07:00
John Benediktsson
dd2a5729a7
math.primes.erato: bit faster by inlining.
2012-08-23 09:35:09 -07:00
John Benediktsson
ea25cde2af
math.functions: make it clear that 0 = is the more correct zero?.
2012-08-13 08:03:54 -07:00
Doug Coleman
432c114745
math.complex: Fix using list.
2012-08-12 13:55:36 -07:00
John Benediktsson
4561cf7684
Revert "math.functions: cleaner rect>."
...
This reverts commit 5ecff652ba
.
2012-08-11 10:40:41 -07:00
Doug Coleman
2b45ba9a4f
math.complex: Check C{ } syntax -- can only have two elements in the complex array. Fixes #612 .
2012-08-10 15:58:04 -07:00
John Benediktsson
0178117d6c
math.functions: cleaner rect>.
2012-08-10 15:51:11 -07:00
John Benediktsson
2e9c20a12e
math.matrices: adding the outer product.
2012-08-08 17:02:39 -07:00
Doug Coleman
ffe1c510ae
math.matrices: rename van-der-monde to vandermonde
2012-07-30 16:44:08 -07:00
John Benediktsson
088dfa4861
math.matrices: adding van-der-monde matrix.
2012-07-30 16:15:21 -07:00
John Benediktsson
aed6825b4a
math.vectors: implement v^, v^n, n^v.
2012-07-30 16:15:00 -07:00
John Benediktsson
1a73e79ef7
cleanup some use of with-scope.
2012-07-19 13:55:34 -07:00
John Benediktsson
0359a4e823
math.intervals: using short-circuit logic.
2012-07-17 20:08:12 -07:00
John Benediktsson
bdf02bfd2b
math.statistics: faster and simpler entropy word.
2012-07-11 12:26:20 -07:00
John Benediktsson
0c5f895371
math.statistics: minor style cleanup.
2012-07-10 17:03:01 -07:00
John Benediktsson
9063235994
math.functions: minor cleanup.
2012-06-22 08:38:34 -07:00
John Benediktsson
55525a8ba4
math.combinatorics: 100%+ faster combinations.
2012-06-01 14:07:39 -07:00
John Benediktsson
d10fd71cb3
math.functions: implement copysign.
2012-06-01 08:24:35 -07:00
John Benediktsson
f090967d77
math.matrices: adding docs for a few words.
2012-05-25 12:19:23 -07:00
Doug Coleman
aad94d711b
math.matrices: Add another test to make sure we calculate kron correctly.
2012-05-24 09:02:47 -07:00
Doug Coleman
78f1ca9f14
math.matrices: Add stitch. Add Kronecker product.
2012-05-24 08:53:47 -07:00
John Benediktsson
07b0d52f55
math.statistics: adding winsorized-mean.
2012-05-08 08:48:15 -07:00
John Benediktsson
4c2d01c5ec
math.statistics: adding trim-mean and signal-to-noise.
2012-05-08 08:24:57 -07:00
Doug Coleman
0a5a2a74a7
math.statistics: Add sum-of-squares word, add sum-of-squared-errors/sum-of-absolute-errors words.
2012-05-07 15:04:37 -07:00
John Benediktsson
495637a087
math.matrices: adding hilbert-matrix, toeplitz-matrix, hankel-matrix, and box-matrix.
2012-05-04 18:01:21 -07:00
Doug Coleman
9a4e66c8a6
math.statistics: Add power-mean and quadratic-mean.
2012-05-04 15:27:46 -07:00
John Benediktsson
7ab521f0ba
math.statistics: simpler (faster) version of rescale.
2012-05-04 14:51:38 -07:00
John Benediktsson
87686a9a31
math.statistics: adding contraharmonic-mean.
2012-05-04 14:43:29 -07:00
John Benediktsson
4339b14d77
math.statistics: adding mean-dev and median-dev.
2012-05-04 14:40:24 -07:00
John Benediktsson
bacdd691fc
math.statistics: separate "sample-" and "full-" versions of var, std, ste, and corr.
2012-05-04 14:31:26 -07:00
John Benediktsson
0435098bd8
math.statistics: adding standardize, differences, rescale.
2012-05-04 14:18:45 -07:00
Doug Coleman
6f3fe950a7
math.matrices: Add a diagonal-matrix word that makes an nxn matrix from a sequence.
...
Optimize identity-matrix word -- 2-3x faster using diagonal-matrix.
Add an eye word that makes an mxn diagonal matrix with a diagonal offset by k.
2012-05-04 11:31:05 -07:00
John Benediktsson
31c7bd8e86
math.functions: adding generalized signum function. Fixes #509 .
2012-05-03 14:44:10 -07:00
John Benediktsson
95b82eecfa
math.vectors: adding p-norm.
2012-05-03 13:27:00 -07:00
Doug Coleman
f6398365bd
math.functions: rename exp to e^ to be consistent with 2^ and 10^. update things.
2012-05-02 10:22:23 -07:00
Doug Coleman
fee4d76b73
math.functions: Add e^ and sigmoid functions.
2012-05-02 09:21:34 -07:00
John Benediktsson
5878b6982b
math.statistics: adding entropy function.
2012-04-26 18:40:59 -07:00
John Benediktsson
6f89c1824d
change to in-place reverse.
2012-04-24 18:51:46 -07:00
John Benediktsson
817b45ee03
math.combinatorics: minor performance improvements.
2012-04-24 18:42:34 -07:00
John Benediktsson
f24e40800a
math.combinatorics: faster version of factorial.
2012-04-24 10:06:00 -07:00
Doug Coleman
cd9394f8c6
math.statistics: Add eight methods for calculating quantiles. Add quartile. Add kth-smallests et al, refactor medians.
2012-04-24 03:17:50 -07:00
Doug Coleman
7cb094d521
math.statistics: Make a safe version of kth-object. Bounds check k w/ regards to seq.
2012-04-23 13:55:25 -07:00
John Benediktsson
b9bcfdab8e
math.combinatorics: adding <combinations> and <permutations> sequences.
2012-04-23 08:30:22 -07:00
Doug Coleman
7ad089b682
math.statistics: Generalize kth-smallest into kth-object, add kth-largest. Add count-relative and minmax-relative for counting the number of lt, eq, gt elements, and getting the max lt and min gt in one pass.
2012-04-22 23:41:13 -07:00
John Benediktsson
c00ddde434
math.combinatorics: fix failed find combinations/permutations.
2012-04-21 20:11:47 -07:00
John Benediktsson
bada993f78
math.combinatorics: adding find-combination and find-permutation.
2012-04-20 23:31:40 -07:00
John Benediktsson
7a15418cf4
math.functions: adding another test for roots.
2012-04-19 13:34:42 -07:00
John Benediktsson
adc7b22997
math.functions: adding "roots" word to get arbitrary roots from numbers.
2012-04-19 12:19:14 -07:00
John Benediktsson
1e8eb18216
math.functions: adding docs and tests for ^mod.
2012-04-19 08:20:11 -07:00
Doug Coleman
0322b4d028
math.combinators: Add filter-permutations/combinations. Minor cleanup.
2012-04-18 15:18:54 -07:00
Doug Coleman
229d0e0549
math.combinators: Add map-permutation
2012-04-18 15:18:54 -07:00
John Benediktsson
e9ffd2da37
math.statistics: adding cumulative versions of sum, product, min, and max.
2012-04-12 10:30:16 -07:00
Doug Coleman
021e0f2ce6
math.statistics: Fix docs for help-lint.
2012-04-10 08:52:12 -07:00
John Benediktsson
236dd2cc97
math.combinatorics: fix help-lint.
2012-04-09 11:43:22 -07:00
John Benediktsson
214195e56a
Revert "math.functions: simpler without "simple-gcd"."
...
This reverts commit aa7f60ebbc
.
2012-04-05 10:34:50 -07:00
John Benediktsson
b240519bff
math.functions: simpler without "simple-gcd".
2012-04-05 10:31:46 -07:00
John Benediktsson
b2ffda32ca
math: adding a fast-gcd that speeds up all ratio operations by up to 10 times for bignum ratios.
2012-04-05 09:17:52 -07:00
John Benediktsson
57231bfef4
math.statistics: change 'var' to 'sample-var' and implement variance, covariance, and correlation.
2012-04-02 17:12:32 -07:00
John Benediktsson
4f046a2339
math.vectors: separate "dot product" from "Hermitian inner product". Fixes #484 .
2012-03-29 10:56:39 -07:00
John Benediktsson
7a07e8742c
math.combinatorics: fix tests for next-permutation.
2012-03-02 10:05:57 -08:00
John Benediktsson
7bb807d441
math.combinatorics: fix docs for next-permutation.
2012-03-02 09:55:22 -08:00
John Benediktsson
8d56193edd
math.combinatorics: implementing "next-permutation".
2012-03-02 09:54:35 -08:00
John Benediktsson
de74b98278
math.vectors: fix some $examples in docs.
2011-12-29 17:31:55 -08:00
Joe Groff
aa1ad21d72
fix help-lint failures
2011-12-14 11:33:17 -08:00
Joe Groff
fe767253a1
math.vectors: add higher-order stack effect to vif
2011-12-13 19:46:44 -08:00
Joe Groff
3deae96995
math.vectors.simd.intrinsics: fix deploy bug
...
If not called with a known-at-compile-time SIMD type, the intrinsic definitions were leaving behind runtime quotations that referenced the c-array words after c-type information had been stripped, causing deployed applications that used SIMD to fail.
2011-12-07 12:47:38 -08:00
Doug Coleman
abc953ecea
help-lint fixes for recent changes
2011-12-07 12:26:35 -08:00
Joe Groff
8cb78d5bd2
math.complex: pass tests even if number-base set
2011-11-26 17:46:38 -08:00
Joe Groff
943596575a
use radix literals
2011-11-23 19:03:40 -08:00
Joe Groff
54dcd8a4ea
math.vectors.simd: don't try distance on int types
...
"v- norm" doesn't work right for uint-4s because of underflow, but who's going to call "distance" on a uint vector?
2011-11-13 16:10:27 -08:00
Joe Groff
dd8bb5b673
math.vectors.simd: unencrypt check-optimizer
...
And make it report real information about what values were tested and how they failed
2011-11-13 16:10:27 -08:00
Joe Groff
248066c710
code beautification
2011-11-13 16:10:26 -08:00
Joe Groff
a10fa68218
math.vectors.simd: add vcount to the tests
...
Also add a base case to (approx=) for integer returns. vcount returns an integer even for float vector inputs, but the test machinery isn't smart enough to figure that out and uses (approx=) on the outputs anyway.
2011-11-13 16:10:26 -08:00
Joe Groff
32b7dc116f
math.vectors.simd.intrinsics: fix double-2 vcount
...
Turns out we use MOVMSKPS for double vectors too. Gotta save that extra instruction byte!
2011-11-13 16:10:25 -08:00
Joe Groff
dd8dda4f48
math.vectors.simd: make vcount work for all ints
2011-11-13 16:10:23 -08:00
Joe Groff
5411a67b22
math.vectors.simd.intrinsics: better fake vgetmask
...
More accurate simulacrum of PMOVMSKB/MOVMSKPS/MOVMSKPD for non-intrinsic definition
2011-11-13 16:10:22 -08:00
Joe Groff
da81cb9035
math.bitwise: don't count the same bits over&over
2011-11-13 16:10:22 -08:00
Joe Groff
706c9ee3b9
math.bitwise: hotrod nonintrinsic fixnum-bit-count
2011-11-13 16:10:21 -08:00
Joe Groff
d79b462f75
compiler: add intrinsic for PMOVMSKB/MOVMSKP[SD]
...
Combined with a fast bit-count this will let us rice byte-counting.
2011-11-13 16:10:20 -08:00
Doug Coleman
60f928ddbf
math.functions: flushable and foldable don't do anything on inline words because flushable and foldable work on call sites (#call nodes), and inlined words are inlined into another word's call site; they don't generate their own #call node.
2011-11-06 19:25:53 -08:00
Doug Coleman
c731dc6edb
Rename lookup to lookup-word.
2011-11-06 16:00:00 -08:00
Joe Groff
8cf18d1a82
remove BSD,solaris,etc. misc platform support code
2011-11-02 17:13:51 -07:00
Joe Groff
38a5184fdf
math.statistics: fix stack effect on collect-by
2011-11-02 13:23:13 -07:00
Doug Coleman
94db86a6db
Make "foo.private" require load foo instead.
...
Move require from vocabs.loader to vocabs. Update everything.
Fixes #201 .
2011-11-02 11:50:03 -07:00
Slava Pestov
b31ffdfcb4
math.vectors.simd: vlshift, vrshift, hlshift and hrshift were being miscompiled if the shift count was a bignum. Fixes #264
2011-10-30 21:50:17 -07:00
Doug Coleman
51c033a1f6
Fix all failures in the linux64 build email
2011-10-24 19:33:09 -07:00
John Benediktsson
fb2aab3545
Remove unused words. Fixes #132 .
2011-10-19 11:01:16 -07:00
John Benediktsson
80e1c8e3f2
Eliminate duplicate syntax for stack effects "(" no longer drops and is identical to the old "((", which is now removed.
2011-10-18 13:19:39 -07:00
John Benediktsson
cf54ce8e42
math.functions: when gcd is inlined, "gcd nip" is almost as good as "gcd*".
2011-10-18 10:30:39 -07:00
John Benediktsson
38a54cb8df
math.functions: improve stack effect names for gcd*.
2011-10-17 20:37:36 -07:00
John Benediktsson
ac98269f53
math.functions: faster gcd means faster ratios.
2011-10-17 20:36:28 -07:00
John Benediktsson
81714b8dc3
More lint cleanups.
2011-10-16 19:33:16 -07:00
John Benediktsson
6f1c44b46d
Cleanup some lint warnings.
2011-10-15 19:19:44 -07:00
John Benediktsson
cc49bbfb27
math.bitwise: bits is clearer this way.
2011-10-14 13:54:08 -07:00
Doug Coleman
181f11faa8
Make M\ throw an error upon lookup failure. Change method -> ?lookup-method, lookup-method is the throwing version of ?lookup-method. Fixes #229 .
2011-10-03 15:49:49 -07:00
Doug Coleman
f4da6f366c
Make histogram example unchecked since hashtables print differently now that hashcodes are more optimized
2011-10-02 22:21:12 -07:00
John Benediktsson
3b72b641e0
Fix help-lint errors for recent hashtable changes.
2011-10-02 17:49:11 -07:00
Doug Coleman
76580da5d5
Refactor the lexer/parser to expose friendlier words for scanning tokens. The preferred top-level words now throw an exception on EOF.
...
CREATE -> scan-new
CREATE-CLASS -> scan-new-class
CREATE-WORD -> scan-new-word
CREATE-GENERIC -> scan-new-generic
scan -> (scan-token)
scan-token now throws on eof
(scan-word) returns word/number/f
scan-word now throws on eof
scan-word-name expects a non-number
Fixes #183 .
Fixes #209 .
2011-09-29 11:28:28 -07:00
John Benediktsson
4f42c72012
specialized-arrays: performed some cleanup.
...
Specifically,
• Created >c-array to be replacement for >T-array.
• Created cast-array to be generic replacement for all T-array-cast words.
• Created c-array@ to be generic replacement for T-array@ words.
• Replaced usages of <T-array> with T <c-array>
• Replaced usages of <direct-T-array> with T <c-direct-array>
• Replaced usages of >T-array with T >c-array
• Replaced usages of T-array-cast with T cast-array
• Replaced usages of malloc-T-array with T malloc-array.
• Removed malloc-T-array.
• Removed T-array-cast.
• Removed T-array@.
• Removed >T-array.
I also added (but didn't change any code to use):
• T c-array-type, returns T-array
• T c-array?, returns T-array?
• c-array{ T ... }, returns T-array{ ... }
Bootstraps just find on Mac OS X. Also `load-all test-all` works for me.
2011-09-26 11:37:51 -07:00
Joe Groff
81b12adcad
math.blas, alien.fortran: move to unmaintained cuz I'm getting too old for this shit. closes #171
2011-09-24 20:59:21 -07:00
Joe Groff
954bf89c40
math.functions: clean up some more to trim back load-time dependencies; alter tests to avoid inexact float constants where possible and hex-ify inexact constants otherwise
2011-09-22 16:04:49 -07:00
John Benediktsson
96c710a7b7
math.functions: inline 'on-bits' per Joe Groff's suggestion.
2011-09-22 13:44:30 -07:00
John Benediktsson
aa880f46ca
math.functions: rename 'bignum-log-helper'.
2011-09-22 12:38:33 -07:00
John Benediktsson
820b54d0f7
math.functions: duplicate on-bits to avoid circular dependency on math.bitwise.
2011-09-22 12:23:16 -07:00
John Benediktsson
90dbb84663
math.functions: test log with negative (really) bignums.
2011-09-22 11:15:06 -07:00
John Benediktsson
7f4604318a
math.functions: add forgotten imports and fix between? check.
2011-09-22 10:00:22 -07:00
John Benediktsson
077ef8ed5b
math.functions: implement "frexp" and support log of really big numbers. Fixes #160 .
2011-09-22 09:42:28 -07:00
Doug Coleman
eedc1e185f
Add more unit-tests and docs for math.bitwise. Fix a bug with >signed so that it truncates a number to however many bits you tell it the number is before doing the calculation.
2011-09-21 14:55:50 -05:00
John Benediktsson
b653360299
math.primes.safe: fix docs.
2011-09-12 10:56:39 -07:00
Joe Groff
003271f2b8
math.statistics: declare polymorphic effects on sequence>* combinators now that #88 is fixed
2011-09-09 18:13:17 -07:00
Joe Groff
c57c26b3be
math.statistics: add higher-order stack effect annotations to sequence>* words; factor out a "histogram-by" word from "histogram" that takes an additional binning quotation
2011-09-08 19:07:33 -07:00
John Benediktsson
9f34c9c676
Spelling fixes to documentation.
2011-08-26 16:20:31 -07:00
Joe Groff
efe79cf6d3
math.functions: make sure zero zero ^ is always nan, regardless of the type of zero
2011-08-01 10:26:53 -07:00
Joe Groff
40c45e08ca
Merge remote branch 'erikc/master'
2011-06-13 11:28:02 -07:00
Joe Groff
b6cf76b547
Merge branch 'master' of factorcode.org:/git/factor
2011-06-07 09:44:35 -07:00
Joe Groff
e4b1417dd2
math.functions: fix documentation for 10^
2011-06-06 16:27:56 -07:00
Erik Charlebois
64252dbdbc
32 and 64 bit Linux PPC support
2011-05-23 23:36:14 -04:00
Erik Charlebois
305dcf1551
Use .factor-rc etc on Windows too, files can begin with dots just fine
2011-05-23 23:36:13 -04:00
Samuel Tardieu
23fe76160a
Add math.primes:nprimes
2011-05-20 12:38:27 +02:00
Slava Pestov
d58555d6f5
Merge branch 'cleanup' of git://github.com/mrjbq7/factor
2011-05-06 20:27:59 -07:00
John Benediktsson
1778757fa2
Update references to "1 tail" to use "rest".
2011-05-03 20:50:23 -07:00
John Benediktsson
eb6c986cd6
Merge branch 'master' into sorting
...
Conflicts:
basis/heaps/heaps-tests.factor
2011-04-12 18:09:36 -07:00
Doug Coleman
7aa7b08d42
Change how sequence>assoc and friends work. Now they take two quotations, the first of which prepares the key/value pair and the second insert it into the assoc. mrjbq7's group-by, formerly collect-values, is now called collect-by.
2011-04-09 23:51:14 -05:00
John Benediktsson
d58bc08aa0
Update code that did ">alist sort-" to just "sort-".
2011-04-07 09:01:21 -07:00
Doug Coleman
979e487fef
Merge branch 'master' of git://factorcode.org/git/factor
2011-02-26 11:44:50 -06:00
Keita Haga
5a71a0d671
math.combinatorics: fix typo in docs
2011-02-20 03:08:01 +09:00
Doug Coleman
fd7e5ffee8
More efficient polyval algorithm in math.polynomials
2011-02-12 22:41:13 -06:00
Keita Haga
073eda332a
In several documentation, remove whitespace before or after the colon or period
2011-02-10 01:51:13 +09:00
Keita Haga
5043611252
math.polynomials: fix typo in description of pextend-conv word
2011-01-18 23:35:52 +09:00
Keita Haga
cb06cba857
math.statistics: in some words, interchanging the positions of the $examples and a $description
2011-01-18 23:20:06 +09:00
Keita Haga
8b1fbbf3b7
math.statistics: fix a few typos in docs
2011-01-18 22:32:45 +09:00
Keita Haga
e8ce62c64e
math.intervals: fix some typos in docs
2011-01-18 21:18:35 +09:00
Keita Haga
8d2ceda8f3
assocs, math.bitwise: remove first blank line and useless whitespace in a few usage examples
2011-01-17 00:12:28 +09:00
Keita Haga
92b9b92f38
math.libm: add missing right parenthesis in description of fexp word
2011-01-16 10:48:06 +09:00
Jon Harper
f60f13c675
math.primes.erato doc fixes.
2010-11-02 17:34:28 +01:00
Rupert Swarbrick
cd28c7a219
math.primes.erato: Fix off-by-one error
...
The sieve bit vector deals with numbers in chunks of 30. Therefore,
the number 90 (say) is the 91st 'element' of the vector. Each byte
deals with some range {0,1,...,29}+30n so to have the number 90, you
need four bytes.
Rather pleasingly, I bumped into this bug and it reduced to the
incantation:
2010 2010 sieve marked-prime?
2010-11-02 17:34:24 +01:00
Doug Coleman
67c37591ca
Remove <uint> *uint and friends. Hopefully remove the last usages of these words
2010-10-25 15:54:42 -05:00
Slava Pestov
ee1520f683
math.primes.erato: fix typo in docs
2010-10-22 18:26:08 -07:00
Slava Pestov
04be762fac
math.rectangles: add infinite recursion check in case somebody does something stupid
2010-09-16 21:27:18 -07:00
Slava Pestov
1818bcb780
Fix three problems discovered by running math.floats.env tests in a loop:
...
- Crash if allocating error triggers a GC from a signal/SEH handler
- Crash if GC runs with floating point traps enabled on Windows
- Floating point traps didn't prettyprint properly
2010-09-02 22:57:14 -05:00
Slava Pestov
720d634388
math.floats.env.x86: make sure the x87 stack is cleared after the overflow test, otherwise random things screw up later
2010-08-28 12:01:09 -05:00
Slava Pestov
6e0cb74b13
math.vectors.simd: docs mention obsolete 'test-mr mr.' words
2010-08-20 18:00:03 -07:00
Slava Pestov
1985705413
compiler: now that FFI has been deconcatenatized, we no longer need the special ##unary-float-function and ##binary-float-function fastpaths
2010-08-13 23:59:19 -07:00
Joe Groff
7384793287
math.floats.env.x86: more direct test for stack fault detection
2010-08-13 22:20:16 -07:00
John Benediktsson
ae17190909
math.combinatorics: Fixing selections bug with nested sequences.
2010-08-13 14:34:14 -07:00
Joe Groff
8347a9ead8
math.floats.env: detect +fp-x87-stack-fault+ during collect-fp-exceptions block
2010-08-12 23:23:00 -07:00
Slava Pestov
42b858b3f0
math.libm: fix regression: fsqrt intrinsic was not working ever since change was made to inline FUNCTION: bodies
2010-08-12 21:41:57 -07:00
Jon Harper
4fcdb2fbd5
divisors returns empty list for 0
...
This is mainly for consistency with other words
(factors, group-factors, unique-factors)
2010-08-09 22:54:35 -07:00
Slava Pestov
68da8c48d5
Merge branch 'master' of http://github.com/mrjbq7/factor
2010-07-26 15:10:50 -04:00
John Benediktsson
f1eb6a9d6e
math.combinatorics: improve all-subsets and selections words.
2010-07-26 08:12:36 -07:00
Slava Pestov
3dbb8e6153
math.matrices: move normal word from gpu.demos.bunny and reverse sign
2010-07-23 20:41:08 -07:00
Slava Pestov
446ee6896d
alien.data: remove second quotation parameter from with-out-parameters, now all values are copied properly and calling 'clone' on structs in this quotation is not necessary
2010-07-16 17:32:05 -04:00
Joe Groff
37bddfba54
math.combinatorics: all-subsets and selections words (contributed by John Benediktsson)
2010-07-14 09:10:51 -07:00
Joe Groff
8323d7c3ac
math.polynomials: unclip drop => rest
2010-07-05 20:53:24 -07:00
Joe Groff
c6fd20b107
math.polynomials: update pdiff for no-integers-as-sequences (reported by rswarbrick)
2010-07-04 09:23:43 -07:00
Joe Groff
28a56df0da
math.quaternions: typo in n*q
2010-06-17 19:23:52 -07:00
Joe Groff
15c63aacb9
math.vectors.simd.cords: add regression test for >A
2010-06-15 22:44:15 -07:00
Joe Groff
e10d4f39ee
math.vectors.simd.cords: use head-slice/tail-slice to slice up input sequences for >A op so that e.g. float-4{ ... } >double-4 works
2010-06-15 21:55:26 -07:00
Slava Pestov
e4d6611070
Merge branch 'for-slava' of git://git.rfc1149.net/factor
2010-06-11 20:10:07 -04:00
Slava Pestov
3dabdcbdc3
mirrors: rename enumerated-sequence to inspected-sequence
2010-06-11 17:14:15 -04:00
Samuel Tardieu
b3a866173a
Fix "primes-between" and "primes-upto" with pathological bounds.
...
"primes-between" was buggy when bounds were given in the wrong order
or when the high bound was smaller than 3.
2010-06-11 16:07:52 +02:00
Joe Groff
1041ad5f9b
math.vectors.simd.intrinsics: use unrolled loops for some software fallbacks
2010-05-24 18:39:06 -07:00
Joe Groff
60b20d590a
math.vectors.simd.intrinsics: remove call( -- ) wrapper from fallbacks
2010-05-24 12:58:14 -07:00
Joe Groff
8d66b14e59
math.vectors.simd.intrinsics: use <direct-X-array> instead of X-array-cast to construct view over fallback byte-arrays to avoid redundant array size checking
2010-05-23 23:18:02 -07:00
Joe Groff
af83a9341c
math.vectors.simd.intrinsics: wrap intrinsic fallback bodies in call( -- ) so we can abuse macros in their normally-inlined bodies
2010-05-23 22:39:44 -07:00
Slava Pestov
ba7cb61133
Stack allocation improvements
...
- New with-out-parameters combinator
- Inhibit tail call optimization in frames with local allocation, to ensure that passing a stack allocated value to the last word in the quotation works
- local allocations are now aligned properly
- spill slots are now aligned properly aligned in frames which have parameter and local allocation areas
2010-05-22 02:37:00 -04:00
Doug Coleman
bdecd564a3
Use keys/values where appropriate
2010-05-21 12:48:04 -05:00
Slava Pestov
a8098e3182
specialized-arrays: rename byte-array>T-array to T-array-cast, and make it work with anything that responds to >c-ptr / byte-length
2010-05-18 23:09:34 -04:00
Slava Pestov
e30a429985
Fixing fallout from sequences.generalizations change
2010-05-18 22:59:07 -04:00
Slava Pestov
ea726f5680
Move remaining sequence operations from generalizations to sequences.generalizations where they belong
2010-05-18 18:36:47 -04:00
Slava Pestov
5b48cd2a63
FFI rewrite part 5: return value boxing and callback parameter boxing now uses vregs; simplify return value unboxing
2010-05-16 03:43:23 -04:00
Joe Groff
7c6c4ef8ae
math.bitwise: factor M\ fixnum (bit-count) to a separate word so it can be made intrinsic
2010-05-15 13:27:26 -07:00
Joe Groff
8f1751cd54
math.vectors.simd.intrinsics: fix scalar fallback for (simd-vshuffle2-elements)
2010-05-14 02:47:39 -07:00
Joe Groff
2744816209
math.vectors, math.vectors.simd: add user-facing vshuffle2 word
2010-05-14 02:47:05 -07:00
Joe Groff
9f9e145819
math.vectors.simd.intrinsics: (simd-vshuffle2-elements) intrinsic that creates a vector by selecting elements from two input vectors. use ##shuffle-vector-halves-imm to implement for double-2s with SSE
2010-05-14 01:16:29 -07:00
Slava Pestov
fe30355ec7
math.vectors.simd.cords: implement new-sequence and like methods on cords to make cross product work
2010-05-13 21:55:19 -04:00
Slava Pestov
627295f094
Language change: tuple slot setter words with stack effect ( value object -- ) are now named FOO<< instead of (>>FOO)
2010-05-06 17:21:02 -04:00
Slava Pestov
60299f6d74
Eliminate some -rot from the codebase
2010-05-03 18:31:01 -04:00
Slava Pestov
38bafd2be8
compiler.cfg.linear-scan.assignment: spill slot representation logic was backwards, just like Factor
2010-05-03 17:34:29 -04:00
Doug Coleman
f67c62b0e4
Fix help lint for math.polynomials
2010-04-30 14:04:45 -05:00
Doug Coleman
e15c02f308
Clean up math.polynomials some
2010-04-30 08:42:29 -05:00
Slava Pestov
cea21f6a3d
math.vectors: (vmerge) shouldn't be generic
2010-04-29 02:28:05 -04:00
Slava Pestov
4ee9e5336f
math.vectors.simd.cords: a dash of inline sauce
2010-04-29 01:58:56 -04:00
Joe Groff
0ab9046300
rename half-floats vocab to math.floats.half
2010-04-28 15:48:47 -07:00
Daniel Ehrenberg
aa6158b366
Changing require-when usages to the new syntax for require-when
2010-04-18 14:29:24 -05:00
Joe Groff
1dadc4efed
Merge branch 'master' of git://factorcode.org/git/factor
2010-04-14 13:16:08 -07:00
Joe Groff
efbc3033da
math.libm: use FUNCTION-ALIAS:
2010-04-14 12:25:22 -07:00
Slava Pestov
da6bcbedfc
Replace 'untested' tag with 'not loaded' and 'not tested' tags
2010-04-13 18:43:01 -07:00
Joe Groff
ef884ef7f2
Merge branch 'master' into abi-symbols
2010-04-01 15:28:36 -07:00
Doug Coleman
026499e64f
Use flags{ instead of flags all over the place
2010-04-01 14:44:03 -05:00
Joe Groff
4fd61f0b5c
cpu.architecture: alter param-regs to take abi as an (ignored for now) argument
2010-04-01 02:53:40 -07:00
Joe Groff
65c3259761
"cdecl" -> cdecl
2010-03-31 19:20:35 -07:00
Doug Coleman
b39e3f4700
Link a word in math docs
2010-03-31 15:09:51 -05:00
Daniel Ehrenberg
4af88ff9ff
Making more vocabs use require-when
2010-03-18 01:39:30 -04:00
Daniel Ehrenberg
eb060443db
Updating code to use require-when rather than vocab [ require ] when
2010-03-18 01:13:37 -04:00
Daniel Ehrenberg
512fe14e4e
Merge branch 'bags' of git://github.com/littledan/Factor
...
Conflicts:
basis/compiler/cfg/ssa/construction/tdmsc/tdmsc.factor
basis/furnace/auth/auth.factor
basis/stack-checker/backend/backend.factor
2010-03-16 13:28:00 -04:00
Joe Groff
e7968ceffc
mop up compiler errors from macosx load-all
2010-03-09 00:56:07 -08:00
Joe Groff
191ac353fd
generalize stack effects so we can bootstrap with the stricter stack effect checking
2010-03-08 23:38:10 -08:00
Daniel Ehrenberg
434605c0b5
Changing some uses of prune to use members
2010-02-27 13:14:03 -05:00
Erik Charlebois
cebabdc323
Add perp and angle-between words for vectors. Fix bug in cross product and add unit tests.
2010-02-25 16:46:02 -08:00
Slava Pestov
7826543d2e
sequences: add cartesian-each, cartesian-map, cartesian-product words to eliminate some duplication throughout the codebase
2010-02-25 20:54:57 +13:00
Slava Pestov
af0ddd5985
Specialized arrays, structs and other objects responding to the >c-ptr / byte-length protocol can now be written to binary streams
2010-02-24 20:18:41 +13:00
Joe Groff
92e1ca8b61
math.blas: update string c-types
2010-02-21 16:49:58 -08:00
Slava Pestov
95bfc8a240
vocabs.metadata: replace unportable tag with a platforms.txt file for more fine-grained control. Rename unportable tag to untested for remaining cases
2010-02-20 13:30:49 +13:00
Slava Pestov
220dd88a2c
Update documentation for new help lint check
2010-02-19 12:31:52 +13:00
Slava Pestov
ff172f4132
Make specialized arrays and SIMD types final so that typed can unbox them
2010-02-18 02:39:40 +13:00
Joe Groff
08a20f9478
math.blas.config: add deploy-blas? variable
2010-02-16 13:38:29 -08:00
Slava Pestov
f01487eb83
A few documentation fixes
2010-02-17 00:05:36 +13:00
Slava Pestov
361de6c470
math.points: move to extra
2010-02-16 15:29:02 +13:00
Slava Pestov
4893ebf183
Small cleanups
2010-02-16 04:04:09 +13:00
Erik Charlebois
8f86cc6e51
Made p^ more efficient by repeated squaring instead of repeated multiplication
2010-02-13 19:47:44 -08:00
Erik Charlebois
52230d6c4d
Add p^ to polynomial vocab for exponentiation of polynomials
2010-02-13 02:35:09 -08:00
Slava Pestov
6e34de5588
math.functions: clean up
2010-02-10 15:04:58 +13:00
Slava Pestov
48373a6c4c
Remove math.floats.parser now that its no longer needed
2010-02-08 16:52:29 +13:00
Slava Pestov
38ca12e9d8
math.floats.parser: new vocabulary with old string>float word
2010-02-08 08:32:13 +13:00
Slava Pestov
db4a1f7536
Fix unit test for math.parser change
2010-02-08 08:31:17 +13:00
Joe Groff
60561dd490
math.quaternions: slerp function
2010-02-04 20:08:37 -08:00
Joe Groff
2381e9bf24
quaterion to matrix4 conversion
2010-02-04 11:25:45 -08:00
Joe Groff
4ba8c6e0b5
Merge branch 'master' of git://factorcode.org/git/factor
2010-02-03 21:50:36 -08:00
Slava Pestov
87665c8f40
math.statistics: rename histogram* to histogram! and rename sequence>assoc* to sequence>assoc!
2010-02-03 23:11:33 +13:00
Joe Groff
8cf05e9909
vector-friendlier math.quaternions
2010-02-02 00:30:21 -08:00
Doug Coleman
4a7845e52c
Add [1,b) to math.ranges. Use [1,b] in random.sfmt
2010-01-31 14:48:01 -06:00
Slava Pestov
7fe96f3eff
math.ranges: doesn't need an equal? method, since sequence doesn't define one, and default tuple equal? is fine for ranges
2010-01-27 19:28:45 +13:00
Slava Pestov
f804c9c422
Move compile-call and related words only meant to be used for debugging to compiler.test
2010-01-23 00:39:56 +13:00
Doug Coleman
97668156d9
NetBSD 64 blas abi changed
2010-01-21 05:02:39 -06:00
Slava Pestov
8836ce2581
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
Doug Coleman
4e6a5a772f
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
9356da6fb3
Fix a few integers-as-sequences in docs
2010-01-14 17:20:43 -06:00
Slava Pestov
df40d92216
math.functions: fix memory protection error if exp called on a complex number with a rational real part (reported by prunedtree)
2010-01-15 08:23:48 +13:00
Slava Pestov
ad6d8556e0
Change [0,b) usages to iota
2010-01-15 08:05:50 +13:00
Doug Coleman
4c71d71907
random is generic now -- iota random -> random
2010-01-14 12:48:57 -06:00
Slava Pestov
df4fb4a3ee
Removing integers-as-sequences
2010-01-15 07:15:33 +13:00
Slava Pestov
47a5e96547
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
d84f132589
math.floats.env.x86: split off 32 and 64-bit code into sub-vocabularies
2010-01-07 20:44:28 +13:00
Slava Pestov
dd5452053a
math.floats.env: don't load cpu.x86.64 on x86.32
2010-01-07 20:13:42 +13:00
Slava Pestov
235f3238f5
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
Doug Coleman
ae9bca2b1e
add MAIN: run-unix-factor to math.primes.factors
2009-12-12 23:39:59 -06:00
Doug Coleman
8b38997e55
better minmax
2009-12-07 17:26:33 -06:00
Doug Coleman
313f70dbd6
Merge branch 'master' of git://factorcode.org/git/factor
2009-12-06 02:28:46 -06:00
Joe Groff
6b9c4254ad
move simd operation methods onto simd-128 instead of concrete classes to save image space
2009-12-05 21:19:17 -08:00
Joe Groff
2b2be5f121
Merge branch 'master' of git://factorcode.org/git/factor
2009-12-05 17:18:49 -08:00
Joe Groff
3e40a36c50
fix simd tests
2009-12-05 17:17:16 -08:00
Joe Groff
d412845b41
add v*high, v*hs+, vsad, and vavg to simd fuzz tests
2009-12-05 15:42:41 -08:00
Joe Groff
af39e5d52c
missing USING:s
2009-12-05 15:38:57 -08:00
Slava Pestov
0a5826c123
math.combinatorics: remove 'mirrors' from using list since its not needed
2009-12-05 18:21:32 -05:00
Slava Pestov
abe72ae7ae
math.vectors.simd: ensure that set-alien-vector is open-coded in the actual set-nth-unsafe method on SIMD specialized arrays, not just inlined instances
2009-12-05 18:20:57 -05:00
Joe Groff
104c29aabc
simd intrinsic implementation for v*high, v*hs+, vavg, and vsad
2009-12-05 14:52:18 -08:00
Joe Groff
1845915dc6
add v*high, v*hs+, vavg, and vsad operations to math.vectors
2009-12-05 11:32:31 -08:00
Joe Groff
36b0b65320
move sequence instance to individual SIMD types rather than simd-128 parent type so that "hashcode*" doesn't attempt to use the sequence implementation of hashcode on abstract simd-128 objects
2009-12-04 13:22:59 -08:00
Joe Groff
53ca7f208b
update math.vectors docs for simd changes
2009-12-04 13:21:18 -08:00
Doug Coleman
0a48b946b6
Merge branch 'master' of git://factorcode.org/git/factor
2009-12-02 20:11:08 -06:00
Doug Coleman
a1bb120498
clean up math.combinatorics and add another combinator
2009-11-27 22:50:06 -06:00
Joe Groff
67cc1c01be
Merge branch 'master' into simd-cleanup
2009-11-26 16:14:46 -08:00
Joe Groff
66d0cafa94
fix buggy simd intrinsics
2009-11-26 13:28:40 -08:00
Joe Groff
ac5d3d5652
remove SIMDS:
2009-11-26 11:15:46 -08:00
Joe Groff
0795c60b83
"norm" doesn't need to be generic, "norm-sq sqrt" always works
2009-11-26 11:15:35 -08:00
Joe Groff
7da80f65e7
trick math.vectors.simd into making nicer quotations
2009-11-25 20:24:09 -08:00
Joe Groff
4027002db7
remove SIMD:s
2009-11-25 20:21:54 -08:00