Slava Pestov
15ba7e299b
math.vectors.simd: fix all tests
2009-09-23 01:05:19 -05:00
Keith Lazuka
bea4aa7662
docs: updated some docs to use new markup
2009-09-22 15:22:34 -04:00
Doug Coleman
51ddc963b8
Merge branch 'master' of git://factorcode.org/git/factor
...
Conflicts:
core/generic/generic-tests.factor
2009-09-22 10:25:42 -05:00
Slava Pestov
629fd1fc82
Merge branch 'master' into integer-simd
2009-09-22 03:24:52 -05:00
Slava Pestov
fe0701deb1
math.functions: fix ~ with negative (relative) tolerance
2009-09-22 03:19:47 -05:00
Doug Coleman
b86314ec39
Merge branch 'master' of git://factorcode.org/git/factor
2009-09-21 17:59:48 -05:00
Slava Pestov
0f0bf667b5
Merge branch 'master' of git://factorcode.org/git/factor into integer-simd
2009-09-21 17:58:24 -05:00
Slava Pestov
962d039852
Rename specific-method to method-for-class, rename (effective-method) to method-for-object, and make both much faster
2009-09-21 17:42:20 -05:00
Slava Pestov
ea44ea3522
math.vectors.simd: add saturated arithmetic operations
2009-09-20 23:16:02 -05:00
Doug Coleman
5cb34724b7
Merge branch 'master' of git://factorcode.org/git/factor
...
Conflicts:
basis/classes/struct/struct-tests.factor
basis/functors/functors-tests.factor
basis/specialized-arrays/specialized-arrays-tests.factor
2009-09-20 23:02:49 -05:00
Doug Coleman
eceed177d6
replace usages of <" with """
2009-09-20 22:42:40 -05:00
Slava Pestov
acea55c692
math.vectors: add v+- word which is accelerated by SSE3
2009-09-20 17:43:16 -05:00
Slava Pestov
47d8763340
More integer SIMD work
...
- move generated vocab support from specialized-arrays to vocabs.generated
- add fuzz testing to math.vectors.simd
- add alien type support for integer SIMD vectors
- SIMD: parsing word generates a SIMD type, instead of pre-generating them all in math.vectors.simd
2009-09-20 16:48:17 -05:00
Slava Pestov
e77341b90c
math.vectors.simd: redesign to be more flexible, integer SIMD work in progress
2009-09-20 02:08:32 -05:00
Joe Groff
076ab42dc3
move some allocation words that don't really have much to do with c types out of alien.c-types into a new alien.data vocab
2009-09-17 22:36:05 -05:00
Joe Groff
1f04ed01fe
fix more ambiguities
2009-09-17 09:29:23 -05:00
Joe Groff
fa60d96ae4
fix "float" ambiguities in math.blas, opengl vocabs
2009-09-16 21:25:46 -05:00
Joe Groff
3b4330fcf6
get things to a point where they bootstrap again
2009-09-15 21:43:18 -05:00
Slava Pestov
b03eaf3c32
math: minor doc fixes
2009-09-15 15:42:46 -05:00
Slava Pestov
4f702de449
math.functions: more accurate log10 (fixes problem reported by OneEyed)
2009-09-14 16:19:58 -05:00
Joe Groff
77f0fbf497
missed a few PPC status bits that needed clearing
2009-09-14 15:17:36 -05:00
Joe Groff
2fdb16060b
vm-error>exception-flags word to extract exception flag information from a trap exception
2009-09-14 14:10:51 -05:00
Slava Pestov
0cadfcd7eb
Merge branch 'master' of git://factorcode.org/git/factor
2009-09-14 02:39:24 -05:00
Slava Pestov
c4f3a42269
math.floats.env: Fix linux x86.64 some more
2009-09-14 02:39:12 -05:00
Joe Groff
8fe9bf5429
Merge branch 'master' of git://factorcode.org/git/factor
2009-09-13 23:40:58 -05:00
Joe Groff
fb43ae2daf
save the FP status out of the signal context and use it as part of the fp trap factor exception. clear the FP status before continuing after an exception
2009-09-13 23:39:12 -05:00
Slava Pestov
05b51d2739
math.floats.env: modify tests to take buggy Linux/x86-64 pow() into account
2009-09-13 23:26:09 -05:00
Slava Pestov
abedea0ccb
math.functions: loosen tests up a bit since exp(1) on FreeBSD x86/64 differs from e in the last bit
2009-09-13 22:33:12 -05:00
Slava Pestov
3ab6dbac22
math.floats.env: fix compiled trap unit tests
2009-09-13 18:22:49 -05:00
Slava Pestov
d14f227905
Merge branch 'master' of git://factorcode.org/git/factor
2009-09-13 00:09:09 -05:00
Slava Pestov
3a61107f1d
typos in altivec env
2009-09-12 22:30:11 -05:00
Slava Pestov
32b95c2cdf
math: add unordered comparison operators u< u<= u> u>= which behave exactly like < <= > >= except no floating point exceptions are set if one or both inputs are NaNs; also add efficient intrinsic for unordered? predicate, and fix propagation type functions for abs, absq, and bitnot
2009-09-12 22:20:13 -05:00
Joe Groff
53e23de104
set altivec denormal flag when with-denormal-mode is used
2009-09-12 20:39:41 -05:00
Joe Groff
54162af3fe
Merge branch 'master' of git://factorcode.org/git/factor
2009-09-12 19:45:47 -05:00
Joe Groff
6d328be69b
all-fp-exceptions constant
2009-09-12 18:13:25 -05:00
Slava Pestov
1337f82ce6
math.order: better docs
2009-09-12 16:33:42 -05:00
Slava Pestov
51dd22b119
math.floats.env.ppc: fix ppc-fp-traps>bit
2009-09-12 12:57:15 -05:00
Slava Pestov
d5206b26ec
math.floats.env.ppc: fix ppc-fp-traps-bits
2009-09-12 12:49:51 -05:00
Joe Groff
d4ee121750
Merge branch 'master' of git://factorcode.org/git/factor
2009-09-12 09:04:53 -05:00
Joe Groff
df4d1f8dd2
typos in math.floats.env.ppc
2009-09-12 09:03:27 -05:00
Slava Pestov
b61ff44b66
math.vectors.simd: don't run x86-specific tests on PPC
2009-09-11 21:38:40 -05:00
Joe Groff
1be4c3a6a7
typo
2009-09-11 20:31:06 -05:00
Joe Groff
ffcc630601
log1+ word (maps to C99 log1p function)
2009-09-11 20:28:15 -05:00
Slava Pestov
dfb07601fa
Merge branch 'for-slava' of git://git.rfc1149.net/factor
2009-09-10 13:15:18 -05:00
Joe Groff
bda5963c62
Merge branch 'master' of git://factorcode.org/git/factor
2009-09-09 23:38:01 -05:00
Joe Groff
61851fcd7a
take the union of the x87 and sse exception flags when reporting fp-exception-flags. add back the unit tests i took out since this should fix the problem
2009-09-09 23:37:48 -05:00
Slava Pestov
7f2e2b1777
Specialized array overhaul
...
- Replace hand-written specialized-arrays.* subvocabularies with new system; instead of USE:ing specialized-arrays.T, do SPECIALIZED-ARRAY: T
- Ditto for specialized-vectors; use SPECIALIZED-VECTOR:
- io.mmap.functor: removed entirely, use <mapped-array> instead
- struct-arrays and struct-vectors have been removed because specialized arrays and vectors subsume them entirely
2009-09-09 22:33:34 -05:00
Joe Groff
3d49cc5a0d
change math.floats.env tests not to use any libm functions, which don't reliably set the right hardware exceptions on linux glibc
2009-09-09 18:00:38 -05:00
Joe Groff
01b5430fbf
make math.floats.env backends unportable
2009-09-09 17:32:26 -05:00
Samuel Tardieu
d23286a9ef
Do not repeat sanity tests at each iteration
2009-09-09 21:35:24 +02:00
Joe Groff
1c62a978d0
add some tests to help track down leaks in FP state changes
2009-09-08 23:07:33 -05:00
Slava Pestov
74fa73aeaf
Fix various test failures
2009-09-08 19:18:56 -05:00
Slava Pestov
c52ffebffe
math.rectangles.positioning: don't position popups off-screen
2009-09-08 16:23:02 -05:00
Joe Groff
1fcc0875ba
update math.floats.env.x86 for sse detection change
2009-09-08 15:47:03 -05:00
Joe Groff
2ad9459b85
Merge branch 'master' of git://factorcode.org/git/factor
2009-09-08 15:37:32 -05:00
Joe Groff
0ec342a1c5
factor out x86 and ppc backends for math.floats.env; update both x87 and SSE state on x86
2009-09-08 15:36:53 -05:00
Slava Pestov
d596e3abe7
math.vectors.simd: fix help rendering
2009-09-08 14:49:27 -05:00
Slava Pestov
82a8ef7beb
math.vectors.simd: remove useless dependency
2009-09-08 13:55:56 -05:00
Slava Pestov
aa4307765b
Merge branch 'master' into simd
2009-09-08 13:38:14 -05:00
Slava Pestov
f5536bdde0
math.vectors.specialization: specialized vector words are now subwords of the generic vector word. This ensures that specializations get compiled correctly in all cases
2009-09-08 13:37:25 -05:00
Slava Pestov
c707ba5d61
Merge branch 'for-slava' of git://git.rfc1149.net/factor
2009-09-08 13:09:27 -05:00
Slava Pestov
0c936c14ca
Merge branch 'for-slava' of git://git.rfc1149.net/factor into simd
2009-09-08 13:02:00 -05:00
Slava Pestov
38c961cf6f
Fixes
2009-09-08 00:13:18 -05:00
Slava Pestov
bbca00e2ae
Fix conflicts
2009-09-07 23:51:25 -05:00
Joe Groff
e3509e7f11
tighten up math.floats.env docs
2009-09-07 10:50:40 -05:00
Joe Groff
25b45d6af0
test fp traps
2009-09-06 09:04:46 -05:00
Joe Groff
e705470d42
make public words for querying current rounding mode, denormal mode, and trap set
2009-09-06 08:50:54 -05:00
Joe Groff
96db254311
unit tests for math.floats.env
2009-09-06 07:50:56 -05:00
Joe Groff
36ec53a968
math.floats.env vocab with words to control the floating-point environment
...
add some functions to the VM to grab and set the fpu control register
2009-09-05 19:48:13 -05:00
Slava Pestov
a054ec3d64
specialized-arrays.direct is no more; instead, every specialized-array.<foo> vocabulary has a <direct-T-array> constructor
2009-09-04 22:01:55 -05:00
Slava Pestov
e11d1e37f5
math.vectors.simd: allow punning SIMD vectors between types
2009-09-04 02:35:58 -05:00
Slava Pestov
6494e7a53b
math.vectors.simd: slightly faster 'sum' on 256-bit vectors: add the two components then do horizontal add, instead of doing a horizontal add on each one and adding the results
2009-09-04 02:23:25 -05:00
Slava Pestov
1fc809b643
math.vectors.simd: docs
2009-09-04 01:22:18 -05:00
Slava Pestov
6b5e40b2fc
functors: support private words with DEFINES-PRIVATE; use this to make some words generated by math.vectors.simd.functor private
2009-09-04 01:21:59 -05:00
Slava Pestov
55c449c6e2
math.vectors.simd: define fallbacks for all vector constructors so that code can still work even if SIMD is not available
2009-09-03 21:37:55 -05:00
Slava Pestov
4d5a4222b6
More SIMD work
...
- Rename SIMD types and register representations: <type>-<count> rather than <count><type>-array
- Make a functor to define 256-bit vector types, use it to define float-8 type
- Make SIMD instructions pure-insns so that they participate in value numbering
2009-09-03 20:58:56 -05:00
Slava Pestov
bf81cb4259
math.vectors.simd: split off intrinsics into a sub-vocabulary, to avoid loading most of the SIMD code on bootstrap
2009-09-03 03:43:43 -05:00
Slava Pestov
906a0d212a
Detect SSE version and enable the correct set of SIMD intrinsics
2009-09-03 03:28:38 -05:00
Slava Pestov
ff8c70dbe0
Initial implementation of SSE vector intrinsics:
...
- cpu.architecture: add SSE vector representations
- compiler.cfg.intrinsics.alien: remove an attempt at optimization that value numbering handles now
- compiler.cfg.representations: support instructions where the representation is set in the 'rep' slot, and support conversions between single and double floats
- alien-float, set-alien-float now use the single float representation, and the conversion is implicit; this fixes a long-standing bug where a register could get clobbered because of how %set-alien-float was defined on x86
- math.vectors.specialization: add support for SIMD specialization (where the vector word's body is replaced by another quotation), also specialize the 'sum' word
- math.vectors.simd: 4float-array, 2double-array, 4double-array types, and specializers for the math.vectors words
2009-09-03 02:33:07 -05:00
Slava Pestov
e86a76a7d8
math.constants: add single float epsilon value
2009-09-03 02:23:22 -05:00
Samuel Tardieu
21a89bab0e
Make "divisors" work with 1 as well
2009-09-02 12:07:23 +02:00
Joe Groff
ccb27f81ea
update math.blas for <c-array> change
2009-08-30 22:37:58 -05:00
Slava Pestov
ec70e1d714
More minor documentation tweaks
2009-08-30 06:32:20 -05:00
Slava Pestov
7983b5515f
math.functions: some fixes
2009-08-30 06:19:14 -05:00
Slava Pestov
0db01f6d5f
compiler.cfg.linear-scan now supports partial sync-points where all registers are spilled; taking advantage of this, there are new trigonometric intrinsics which yield a 2x performance boost on benchmark.struct-arrays and a 25% boost on benchmark.partial-sums
2009-08-30 04:52:01 -05:00
Marc Fauconneau
2d4ba8de4d
Merge branch 'master' of git://factorcode.org/git/factor
2009-08-30 17:31:30 +09:00
Marc Fauconneau
bf15648b4d
Merge branch 'master' of git@github.com:prunedtree/factor
...
Conflicts:
basis/math/matrices/matrices.factor
2009-08-30 17:24:25 +09:00
Samuel Tardieu
e5897d52b2
Ensure that random-prime result has the right size
...
As noted by Slava, choosing the next prime following a random number
with a specified number of bits may give a number one more bit long.
2009-08-29 21:42:15 +02:00
Slava Pestov
2bb6293217
compiler: add fixnum-min/max intrinsics; ~10% speedup on benchmark.yuv-to-rgb
2009-08-28 19:02:59 -05:00
Slava Pestov
d957ae4e44
Performance improvements to make struct-arrays benchmark faster
...
- improved optimization of ##unbox-any-c-ptr on ##box-displaced-alien; convert it to ##unbox-c-ptr where possible using class info stored in the ##bda instruction
- make fcos, fsin, etc inline again; everything in math.libm inline again, except for fsqrt which is an intrinsic
- convert min and max on floats to float-min and float-max
- make min and max not inline, so that the above can work
- struct-arrays: rice a bit so that more fixnums come up
2009-08-28 05:21:16 -05:00
Slava Pestov
0df8aadce2
cpu.x86: use SQRTSD instruction for math.libm:fsqrt word
2009-08-25 23:22:15 -05:00
Slava Pestov
f82627e736
math.intervals: comment out questionable unit tests
2009-08-22 19:39:32 -05:00
Slava Pestov
81b72cb5c5
Add some unit tests
2009-08-22 17:15:10 -05:00
Slava Pestov
770429a629
math.intervals: help lint fix
2009-08-19 16:08:52 -05:00
Slava Pestov
2bc38bf019
math.intervals: tighter interval arithmetic for intervals with infinities
2009-08-19 02:32:18 -05:00
Slava Pestov
030b1b816c
Add inline declarations for various assorted methods
2009-08-17 22:32:21 -05:00
Doug Coleman
7c92ab1ea5
move if-zero etc to math, remove 1-/1+ from math
2009-08-14 14:27:23 -05:00
Doug Coleman
3f3d57032b
Delete empty unit tests files, remove 1- and 1+, reorder IN: lines in a lot of places, minor refactoring
2009-08-13 19:21:44 -05:00
Slava Pestov
0df4436711
Merge branch 'master' of git://factorcode.org/git/factor
2009-08-12 03:26:13 -05:00
Slava Pestov
4ecf5a904a
More accurate wrap-interval in compiler.tree.propagation.info fixes test regression; constructing an interval with endpoints at infinity now outputs full-interval
2009-08-12 03:25:53 -05:00
Doug Coleman
14e8abd563
even better error handling for division by zero
2009-08-11 22:30:16 -05:00
Doug Coleman
02becc26fc
add docs for if-zero etc, add docs for 10^
2009-08-11 18:45:01 -05:00
Doug Coleman
c12d6fe543
Merge branch 'master' of git://factorcode.org/git/factor
2009-08-11 18:16:30 -05:00
Doug Coleman
4a3d63e00a
use if-zero in a few more places
2009-08-11 18:15:53 -05:00
Doug Coleman
4fef246ca4
add 10^ to math.functions and update usages
2009-08-11 18:00:24 -05:00
Slava Pestov
7bfbb0c5ac
math.intervals: fix interval-rem
2009-08-11 16:49:28 -05:00
Slava Pestov
7e35723db0
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
d19c403fee
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
1cb0f3370b
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
e400d80d8b
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
61ea749bb6
More accurate interval-mod and interval-rem
2009-08-08 22:01:12 -05:00
Doug Coleman
78bbf96a6d
move signed-le> to io.binary, clean up using list for math.bitwise
2009-07-23 15:54:57 -05:00
Joe Groff
809b40d497
preserve sequence type in math.matrices:cross
2009-07-07 16:26:50 -05:00
Joe Groff
96ec54106b
for the FPS classicists... skew matrix constructor
2009-07-04 19:13:31 -05:00
Joe Groff
e39f454aa5
common 3d matrix constructors
2009-07-02 19:05:24 -05:00
Slava Pestov
612e4b99b0
compiler.cfg.linear-scan.assignment: insert-copy did the wrong thing if the second interval had been split. Fixes compilation of 'trilerp'
2009-06-30 21:07:39 -05:00
Samuel Tardieu
4d5392fe56
Add divisors to math.primes.factors
2009-06-29 16:56:00 +02:00
Samuel Tardieu
094c82c50b
Short circuit trivial composites
2009-06-24 15:53:50 +02:00
Samuel Tardieu
50191588e4
Get rid of vector reallocation by preallocating it
2009-06-24 15:53:46 +02:00
Samuel Tardieu
29b5a1dff5
Add extra tests for math.primes
2009-06-24 13:15:13 +02:00
Samuel Tardieu
41d804ddbd
Pack primes numbers by slices of 30
...
In any given 30 successive integers greater than 5, there are at most
8 prime numbers. Use this to tightly pack the result of the Eratostene
sieve. This lets us store more prime numbers than before in less space.
2009-06-24 13:15:12 +02:00
Joe Groff
037ed45339
give range models a step parameter; use it on sliders so the thumb can step by any interval
2009-06-18 20:57:02 -05:00
Joe Groff
76b3e5fea2
win32 support for window-controls
2009-06-18 11:41:34 -05:00
prunedtree
9ffbf32c6f
unit test for m^n
2009-06-12 01:35:25 -07:00
prunedtree
b426f28738
make m^n private
2009-06-12 01:29:34 -07:00
Doug Coleman
6a67f02f69
fix load error
2009-06-12 02:43:05 -05:00
Doug Coleman
7134236e46
Merge branch 'master' of git://github.com/prunedtree/factor
...
Conflicts:
basis/compression/inflate/inflate.factor
basis/math/matrices/matrices.factor
2009-06-12 02:33:49 -05:00
Joe Groff
a2640672d7
«0.0 1.0 ^» was returning 0 instead of 0.0
2009-06-11 17:47:52 -05:00
Doug Coleman
989cb7d5df
better implementation of zero-matrix
2009-06-07 20:12:18 -04:00
prunedtree
1c89045f0e
m^n binary exponentiation of matrices
2009-06-04 20:42:29 -07:00
Daniel Ehrenberg
52017e22f3
unbits word in math.bits vocab
2009-06-01 22:39:02 -05:00
Slava Pestov
e38e805015
math.functions: fix ^ for complex numbers
2009-05-31 23:28:29 -05:00
Doug Coleman
16b288aac8
remove whitespace
2009-05-25 21:25:56 -05:00
Doug Coleman
0cb7b408b4
remove clamp-to-range and associated words, update jamshred
2009-05-25 21:24:12 -05:00
Doug Coleman
407377fc98
rename peek -> last and update all usages
2009-05-25 16:38:33 -05:00
Doug Coleman
a54c78007b
add a clamp word to math.order, use clamp word throughout libraries
2009-05-24 21:35:50 -05:00
Doug Coleman
86a1b06034
add a mode word
2009-05-24 15:45:25 -05:00
Joe Groff
9685aea6fe
homogeneous coordinates coated in nurbsauce
2009-05-21 20:55:44 -05:00
Joe Groff
b73c8a0619
vector bilerp word
2009-05-20 10:26:55 -05:00
Doug Coleman
c045823182
remove old median, fix docs
2009-05-18 02:41:58 -05:00
Doug Coleman
54cb1b9686
median used the wrong algorithm. now it runs in O(n) time. add kth-smallest word, used to implement median
2009-05-18 02:16:03 -05:00
Slava Pestov
66a9416473
Update documentation for stricter vocabulary search path semantics
2009-05-16 00:29:21 -05:00
Doug Coleman
23e3c55d2f
dont load safe primes in miller rabin tests
2009-05-10 14:08:03 -05:00
Doug Coleman
e946777fbb
link to prime tests from prime docs
2009-05-10 14:01:21 -05:00
Doug Coleman
bfb3507456
make a new vocabulary for safe primes
2009-05-10 13:49:40 -05:00
Doug Coleman
8f51f87a8f
more docs for math.primes, move words out of miller-rabin
2009-05-10 13:47:51 -05:00
Doug Coleman
18add4b769
add next-odd etc to math.bitwise
2009-05-10 13:42:41 -05:00
Doug Coleman
0801dbc694
add lucas-lehmer primality test
2009-05-10 12:59:35 -05:00
Doug Coleman
79265b50d9
update usages of miller-rabin
2009-05-10 12:24:43 -05:00
Doug Coleman
6b1f60f550
move math.miller-rabin to math.primes.miller-rabin
2009-05-10 12:24:19 -05:00
Doug Coleman
61fdb6f435
Merge branch 'master' of git://factorcode.org/git/factor
2009-05-10 12:19:39 -05:00
Joe Groff
946602b8d7
Merge branch 'master' of git://factorcode.org/git/factor
2009-05-10 10:44:10 -05:00
Joe Groff
d90bb0f336
cut perlin-noise time in half
2009-05-10 10:41:50 -05:00
Slava Pestov
cda3685c4d
Eliminate prettyprinter dependency from UI
2009-05-09 20:24:17 -05:00
Doug Coleman
3be7034b5e
64-bit add/subtract/multiply
2009-05-09 13:54:42 -05:00
Joe Groff
dd9af334a9
send bilerp upstream to spawn
2009-05-09 11:43:04 -05:00
Slava Pestov
ea85f298d1
math.combinatorics: fix unit test and help lint
2009-05-08 18:00:53 -05:00
Slava Pestov
5cbaa1d4fd
Merge branch 'master' of git://factorcode.org/git/factor
2009-05-08 16:27:36 -05:00
Joe Groff
cc05a90900
Merge branch 'master' of git://factorcode.org/git/factor
2009-05-08 13:13:00 -07:00
Joe Groff
9992817c65
input grabbing support
2009-05-08 15:07:15 -05:00
Aaron Schaefer
d5a028c507
Merge branch 'master' of git://factorcode.org/git/factor
...
Conflicts:
basis/math/miller-rabin/miller-rabin.factor
2009-05-07 22:20:53 -04:00
Slava Pestov
5099046f9f
math.miller-rabin: make some utilities not private since math.primes uses them
2009-05-07 20:52:16 -05:00
Aaron Schaefer
f465a013d7
Speed up best-hands a bit using reduce and add a test
2009-05-07 21:23:58 -04:00
Aaron Schaefer
7f6998a815
Make next-odd public again as it's used elsewhere
2009-05-07 18:33:55 -04:00
Aaron Schaefer
f0ceb33906
Merge branch 'master' of git://factorcode.org/git/factor
2009-05-07 16:44:15 -04:00
Doug Coleman
605068df93
Merge branch 'master' of git://factorcode.org/git/factor
2009-05-07 13:09:45 -05:00
Slava Pestov
d7b40d72a0
Code cleanups
2009-05-07 12:33:31 -05:00
Aaron Schaefer
83e7516666
Use iota where necessary in tests
2009-05-06 21:31:37 -04:00
Aaron Schaefer
b84a3158fa
Add docs for combination words
2009-05-06 21:27:04 -04:00
Aaron Schaefer
78037d8d05
Use binary-search instead of find-last for combinations
2009-05-06 20:46:41 -04:00
Aaron Schaefer
678f603aa5
Clean up combinations a bit
2009-05-06 20:18:21 -04:00
Aaron Schaefer
c9b97f3f92
Add tests for combinations
2009-05-06 19:33:58 -04:00
Doug Coleman
6a19cae302
Document miller-rabin, more unit tests for some corner cases
2009-05-06 16:26:06 -05:00
Doug Coleman
8b4815c01e
fix miller-rabin
2009-05-06 14:10:29 -05:00
Joe Groff
4cb6ecbc3c
Merge branch 'master' of git://factorcode.org/git/factor
2009-05-06 13:23:05 -05:00
Joe Groff
fdab677ef5
add 2pi constant
2009-05-06 12:38:14 -05:00
Joe Groff
2bb7b287f7
make ^n foldable
2009-05-06 12:36:34 -05:00
Doug Coleman
75a71c0bd9
fix miller-rabin, safe primes
2009-05-06 12:21:30 -05:00
Doug Coleman
5a4270f777
fix miller-rabin, it's correct but a little ugly still. bed time
2009-05-06 00:54:14 -05:00
Aaron Schaefer
eaeda30bb1
Combinations now map to input sequences directly
2009-05-06 01:17:35 -04:00
Doug Coleman
d168f76ab0
remove 1-, 1+, use iota somewhere
2009-05-05 23:32:23 -05:00
Doug Coleman
ffbd19faba
Merge branch 'master' of git://factorcode.org/git/factor
2009-05-05 23:26:58 -05:00
Doug Coleman
3e16463f28
_finally_ cleaned up miller-rabin. it's passable now
2009-05-05 23:25:26 -05:00
Joe Groff
4b64d9a5e5
more vector operations; perlin noise vocab
2009-05-05 22:17:04 -05:00
Aaron Schaefer
71022f9940
Add combination support to math.combinatorics
2009-05-05 22:43:07 -04:00
Joe Groff
ec1918aaa8
Merge branch 'master' of /cygdrive/z/Documents/Code/others/factor
2009-05-05 18:40:08 -07:00
Slava Pestov
4ee5815843
math.polynomials: use <repetition> instead of <array>
2009-05-05 18:34:52 -05:00
Joe Groff
2a00f10d1a
lerp functions
2009-05-05 13:55:00 -05:00
Joe Groff
49674dc8ad
Merge branch 'master' of git://factorcode.org/git/factor
2009-04-30 21:36:54 -05:00
Slava Pestov
fc4894fbdf
Replace ratio and complex built-in types with tuples defined in the library. This frees up two lo-tags, so move array and quotation over to these tags and update compiler for new tags
2009-04-30 00:27:35 -05:00
Joe Groff
c3b63821b9
literal syntax for rects
2009-04-29 14:58:55 -05:00
Samuel Tardieu
18abc8b9f1
Add q+ and q- to math.quaternions
...
This makes the quaternions library self-contained and more independent
of the underlying representation.
2009-04-27 17:24:39 +02:00
Slava Pestov
66b4d42e13
math.blas: use gfortran by default on linux-x86-64 since latest ubuntu blas packages are compiled with gfortran abi
2009-04-25 17:03:50 -05:00
Slava Pestov
77c56e55a3
Oops
2009-04-23 03:57:05 -05:00
Slava Pestov
c2fe2a4fea
Improve stack checker documentation
2009-04-23 03:48:32 -05:00
Slava Pestov
3353a777f7
Fixing some unit test failures
2009-04-22 07:05:00 -05:00
Slava Pestov
05f3f9dcb9
Fixing unit tests for stack effect inference changes
2009-04-20 21:15:19 -05:00
Slava Pestov
9add08c200
Move math.matrices to basis
2009-04-18 04:09:16 -05:00
Doug Coleman
364ea217ef
fix more compiler errors
2009-04-17 14:44:08 -05:00
sheeple
a4e62dfdba
Fix for math.parser syntax change
2009-04-13 14:47:39 -05:00
Slava Pestov
0ffd43e2e3
1.0/0.0 => 1/0.
2009-04-13 19:48:08 -05:00
Slava Pestov
41e3e0acb4
Fix alien.fortran for NetBSD x86.64
2009-04-07 18:49:54 -05:00
Slava Pestov
99b8400e56
Documentation updates
2009-04-06 03:00:46 -05:00
Doug Coleman
7e0f271cf3
fix typo in docs
2009-04-02 17:00:29 -05:00
Aaron Schaefer
ed9a63311c
Fix typo and update a combinator usage in calendar
2009-04-01 22:03:45 -04:00
Aaron Schaefer
ca9fb1fcf1
Update usages of divisor? where appropriate
2009-04-01 21:53:18 -04:00
Aaron Schaefer
c698a83a12
Add divisor? math function
2009-04-01 19:29:19 -04:00
Joe Groff
432ff9b07f
Make math.blas library and ABI choice configurable
2009-04-01 14:52:43 -05:00
Doug Coleman
e37627fa8f
fix linux64 blas
2009-04-01 04:28:53 -05:00
Doug Coleman
e5ffc202f2
fix blas ffi on linux64
2009-03-28 14:17:24 -05:00
Doug Coleman
4f428f6404
Merge branch 'master' of git://factorcode.org/git/factor
2009-03-27 21:57:27 -05:00
Doug Coleman
92bd390c9b
use a different abi on linux for fortran
2009-03-27 21:57:10 -05:00
Slava Pestov
6c0986f8b2
Add definition mixin in definitions vocab to replace hard-coded union in ui.tools.operations; add ?execute to kernel to replace dup word? [ execute ] when calls in unicode.breaks and opengl
2009-03-26 21:27:45 -05:00
Doug Coleman
b771758ff7
fix load errors, help lint
2009-03-26 10:45:52 -05:00
Slava Pestov
8385e9d9f5
Fixing compile errors, test failures and help lint failures
2009-03-23 17:12:41 -05:00
Slava Pestov
ea60f8ae93
Changing : foo ; parsing to SYNTAX: foo ;
2009-03-21 01:27:50 -05:00
Slava Pestov
c468ed8962
integer/integer partial dispatch ops now use both-fixnums?
2009-03-16 00:44:44 -05:00
Slava Pestov
b6f6e880bf
Make partially dispatched integer ops foldable
2009-03-11 13:57:13 -05:00
Slava Pestov
df95c2a5b4
Merge branch 'master' into new_ui
2009-03-05 13:59:55 -06:00
Samuel Tardieu
b5e08a8e3e
When a factor has been found, check if the remainder is a prime number
...
Performances are greatly increased when a large prime number is involved.
Also, mark some words as flushable, even if it is unlikely that they
will be invoked if their result is discarded.
2009-03-02 19:05:54 +01:00
Slava Pestov
25a877e50b
Merge OneEyed's patch
2009-02-28 17:06:55 -06:00
Slava Pestov
cd53c2bd37
produce and produce-as: don't need third quotation either
2009-02-28 15:31:34 -06:00
Slava Pestov
78ce670101
Merge branch 'for-slava' of git://git.rfc1149.net/factor
2009-02-28 14:42:56 -06:00
Slava Pestov
ce1bc1d6ed
Fixing conflicts from stack checker changes
2009-02-24 01:21:10 -06:00
Slava Pestov
91d0c4ed1f
Fix conflict
2009-02-22 20:02:13 -06:00
Slava Pestov
0c090699c2
Merge branch 'master' of git://factorcode.org/git/factor
2009-02-22 19:52:06 -06:00
Slava Pestov
127f9b3578
Add unit tests for bignum bug
2009-02-22 19:41:47 -06:00
Doug Coleman
990513db60
use CONSTANT: in basis
2009-02-22 19:13:08 -06:00
Daniel Ehrenberg
70d931d0b2
Creating math.bits
2009-02-20 20:14:54 -06:00
Slava Pestov
15b5d696c1
Merge branch 'master' into new_ui
2009-02-19 18:25:59 -06:00
Jason Merrill
4e0db1332c
Merge branch 'master' of git://factorcode.org/git/factor
2009-02-19 18:55:27 -05:00
Jason Merrill
90b6b38fd1
Changed math.dual to define words as dword instead of overloading generic words on dual numbers.
2009-02-19 18:49:13 -05:00
Slava Pestov
58e55d4f45
Working on documentation
2009-02-19 16:54:27 -06:00
Slava Pestov
b4a61114e1
Merge branch 'master' into new_ui
2009-02-19 13:36:32 -06:00
Slava Pestov
60134eeb98
Documentation fixes
2009-02-19 13:35:53 -06:00
Slava Pestov
31553f5d50
Clean up math.complex
2009-02-19 00:56:30 -06:00
Slava Pestov
5e19766330
Fix conflict
2009-02-18 22:20:05 -06:00
Jason Merrill
6f735fd763
Merge branch 'master' of git://factorcode.org/git/factor
2009-02-18 19:58:55 -05:00
Samuel Tardieu
087d931c36
Remove the tail argument from do/until/while
2009-02-18 02:41:14 +01:00
Slava Pestov
73dfa2ae65
Fix conflict
2009-02-16 21:47:35 -06:00
Doug Coleman
bff66cd47b
remove empty file
2009-02-16 21:27:32 -06:00
Slava Pestov
421ee726b8
Merge branch 'master' into new_ui
2009-02-16 21:22:12 -06:00
Slava Pestov
6b25e99470
Add summary for heaps more vocabs
2009-02-16 21:05:13 -06:00
Slava Pestov
d26ae3d141
new set-rect-bounds word for when you're setting loc and dim at the same time
2009-02-15 23:39:27 -06:00
Slava Pestov
abe0f4bdf4
math.rectangles.positioning: New popup-rect word
2009-02-15 23:14:47 -06:00
Slava Pestov
f8ab4be9da
Line gadgets now support min/max rows/cols; this obsoletes limited-scroller
2009-02-15 04:01:57 -06:00
Slava Pestov
83bf59422b
Merge branch 'master' into new_ui
2009-02-14 00:46:16 -06:00
Doug Coleman
b638a35fd7
move >signed to math.bitwise
2009-02-14 00:31:17 -06:00
Slava Pestov
d186f10f52
Don't position popups at negative x co-ordinates
2009-02-13 19:16:37 -06:00
Jason Merrill
fe55e939f9
Added math.dual and math.derivatives for computing with dual numbers. Also
...
made a few more methods in math.functions generic in order to specialize them
on dual numbers.
2009-02-12 23:13:16 -05:00