Commit Graph

966 Commits (db42e128538f32bb3399f5469866d1b3553ecea3)

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