Commit Graph

31719 Commits (3eb6e55ae4b51ec9de976f22a833f2f1f7605f5c)

Author SHA1 Message Date
Alexander Iljin 1e61dbfd2a Replace inline INVALID_HANDLE_VALUE checks with check-invalid-handle calls
On error find-first-file will now throw a windows-error instance instead of
a string.
2019-11-25 07:06:59 -08:00
Alexander Iljin 38ab7289b5 windows.errors: make check-invalid-handle throw windows-error instances
There are two consequences:
- the thrown object is now a windows-error, previously it was a string;
- if GetLastError returns zero, nothing is thrown. Previously the string
"The operation completed successfully." was thrown in that case.
2019-11-25 07:06:59 -08:00
Niklas Larsson 99df1effea Don't use rm from the nmake build. 2019-11-24 15:51:15 -08:00
John Benediktsson 614256abe2 tensors: fix help-lint warnings. 2019-11-24 15:43:29 -08:00
Nandeeka Nayak ce0584adcb tensors: create basic tensors vocabulary.
tensors: create tensors vocabulary.

tensors: create file heading

tensors: define tensor constructor.

tensors: add additional constructors.

tensors: add reshaping.

tensors: implement add and include tests.

tensors: add binary operations.

tensors: add scalar multiply.

tensors: added >array functionality

tensors: tests for >array

tensors: unit tests fix

tensors: use more idiomatic >array.

tensors: add multi-methods for scalar multiplication.

tensors: cleaned up >array

tensors: combine a few constructors

tensors: added dims function and unit tests.

tensors: add documentation capabilities.

tensors: added multi-methods for scalar addition/subtraction/division

help.lint.coverage: fix for shadowing "empty" word; prevent the other test-only words from being shadowed too

soundex: move to extra as it's unused; fix authors.txt filename

modify arange to match numpy; replace with naturals

create >float-array for efficient float array construction

use combinators

tensors: documentation added for public functions.

tensors: implement t% and matrix multiplication.

tensors: add slice with non-zero step

tensors: add documentation.

tensors: added transposition funcitonality, with documentation and tests

tensors: add error documentation.

Add error documentation

tensors: fix matmul documentation.

extra/tensors: add tests for arange

tensors: make transpose style more similar

tensors: make some of the PR changes.

tensors: separate shape checking.

tensors: add documentation for non-positive-shape-error.

tensors: add missing comment.

tensors: transpose edits for efficiency
2019-11-24 15:41:13 -08:00
Doug Coleman 881040ba23
Add description of '-help' switch to documentation. (#2221) 2019-11-16 18:58:36 -06:00
Alexander Iljin 71ad025aaf random.passwords: new vocab 2019-11-15 09:58:32 -08:00
Cat Stevens cee0229b20 soundex: move to extra as it's unused; fix authors.txt filename 2019-11-11 09:54:12 -08:00
Cat Stevens 465facfde3 help.lint.coverage: fix for shadowing "empty" word; prevent the other test-only words from being shadowed too 2019-11-09 15:08:28 -08:00
John Benediktsson fb9359d26a llvm.ffi: adding LLVMBuildMul. 2019-11-09 10:02:29 -08:00
nomennescio 1f75d6985d Add description of '-help' switch to documentation. 2019-11-08 09:59:56 -08:00
John Benediktsson 234a5bd744 math.extras: don't shadow B (breakpoint). 2019-11-07 21:43:22 -08:00
John Benediktsson 8d8e59c43e math.extras: adding integer-sqrt. 2019-11-07 21:32:07 -08:00
John Benediktsson ec71ef22ee tools.test: add silent-tests? that hides unit-tests. 2019-11-07 13:13:05 -08:00
John Benediktsson 69849bc925 ui.tools.listener: better future-proofing with code-completion class. 2019-11-07 09:57:21 -08:00
John Benediktsson 6db0ae3087 project-euler.common: cleanup. 2019-11-06 20:16:48 -08:00
John Benediktsson 388dc83efd math.primes.factors: flush in unix-factor. 2019-11-06 20:12:55 -08:00
John Benediktsson bc78db5a43 project-euler: cleanup main vocab, don't USE: the children. 2019-11-06 20:05:53 -08:00
John Benediktsson 10d4a41819 project-euler.064: adding description and SOLUTION:. 2019-11-06 20:00:53 -08:00
John Benediktsson fae208f67f project-euler.087: adding description and SOLUTION:. 2019-11-06 19:56:56 -08:00
John Benediktsson 6492f1c9cb math.floats.half: improve the roundtrip of subnormal float16. 2019-11-06 19:40:37 -08:00
John Benediktsson 4ece7a6ca0 benchmark.cuckoo-filters: adding a new benchmark. 2019-11-06 18:17:29 -08:00
John Benediktsson 12dc9e7ab7 classes.union: faster builtin-class check, for example sequence?. 2019-11-06 14:13:13 -08:00
John Benediktsson 17aa52f51c ui.tools.listener: handle history-completion popup differently. 2019-11-06 12:16:19 -08:00
John Benediktsson aaabe0a142 math.extras: adding a more exact sum for floats. 2019-11-06 12:03:01 -08:00
John Benediktsson 972fa0fbab ui.tools.listener: close completion-popup when completion-mode changes. 2019-11-06 09:29:31 -08:00
John Benediktsson 83fd6b65e0 command-line.startup: adding version argument.
$ ./factor -version
Factor 0.99
2019-11-06 08:12:39 -08:00
John Benediktsson 745840dfca listener: adding quiet mode.
This skips printing the version info when starting the listener.

    ./factor -q
    ./factor -q -run=listener
    ./factor -q -run=readline-listener
2019-11-06 08:09:16 -08:00
Cat Stevens 715283d11d basis/system-info.linux: fix test for Linux kernel 5.x 2019-11-05 20:50:26 -08:00
John Benediktsson da64b05e6d math.functions: adding e^-1.
This is for calculating e^x-1 for small values more accurately.  You can also
call expm1(x) function if you want, and it's available on your platform.

FUNCTION: double expm1 ( double x )
2019-11-05 10:19:32 -08:00
John Benediktsson 4c48f03fe1 spelling: minor cleanup. 2019-10-31 14:55:47 -07:00
John Benediktsson e256a4ba18 math.intervals: workaround possible compiler bug by widening interval-bitor.
IN: scratchpad [
                   { byte-array } declare
                   [ 0 alien-unsigned-4 32 shift ]
                   [ 4 alien-unsigned-4 ] bi bitor
                   64 >signed
               ] optimized.

! working
[
    dup >R 0 alien-unsigned-4 32 fixnum-shift
    R> 4 alien-unsigned-4 over tag 0 eq?
    [ fixnum-bitor ] [ fixnum>bignum bignum-bitor ] if
    18446744073709551615 >R >bignum R> bignum-bitand
    dup 63 bignum-bit? [ 18446744073709551616 bignum- ] [ ] if
]

! broken
[
    dup >R 0 alien-unsigned-4 32 fixnum-shift
    R> 4 alien-unsigned-4 over tag 0 eq?
    [ fixnum-bitor ] [ fixnum>bignum bignum-bitor ] if
    dup 63 bignum-bit? [ 18446744073709551616 bignum- ] [ ] if
]

The second case correctly eliminates the bitand but incorrectly assumes
that the item on the stack (which is an integer -- either a fixnum or a
bignum), was converted to a bignum.
2019-10-31 10:45:54 -07:00
John Benediktsson f68df75b84 math.intervals: simplify interval-bitand. 2019-10-31 10:45:36 -07:00
John Benediktsson 52123559f3 math.partial-dispatch: simplify using fry. 2019-10-31 10:27:29 -07:00
John Benediktsson bccdb5419b math.intervals: improve interval-bitand. 2019-10-31 10:27:17 -07:00
John Benediktsson 29ebfe5129 compiler.tree.propagation: fix test for improved interval-bitor. 2019-10-31 10:03:44 -07:00
John Benediktsson 20c4e2feaa math.intervals: remove extra non-interval tests. 2019-10-30 09:47:04 -07:00
timor 30f2d6e78f math.intervals.tests: clean up literal syntax 2019-10-30 09:44:39 -07:00
timor 449224878f math.intervals: more exact interval-bitxor operation
- fixed: `interval-bitxor` caused bit-growth
- improved: `interval-bitxor` more exact case for negative intervals
2019-10-30 09:44:23 -07:00
timor 713cfa79f8 math.intervals: more exact interval-bitor operation
Addresses #2170

- fixed: `interval-bitor` caused bit-growth
- improved: `interval-bitor` more exact about lower bounds

The added utility words could be used as a basis to make the other bitwise
interval operations more exact also.
2019-10-30 09:43:44 -07:00
John Benediktsson bebdb54543 classes.algebra: update forgotten test for flatten-class. 2019-10-25 17:53:06 -07:00
John Benediktsson 522d176762 math.vectors: use $sequence in docs. 2019-10-24 20:38:05 -07:00
John Benediktsson 61964d0f46 classes.union: woops, reduce in fast-union-mask. 2019-10-24 14:14:01 -07:00
John Benediktsson 80bd0feaef classes.algebra: change (flatten-class) to use arrays. 2019-10-24 14:12:26 -07:00
John Benediktsson 738113d524 classes: update docs with $sequence. 2019-10-24 14:10:41 -07:00
John Benediktsson cb091281bb math.floats.env: use $sequence in docs. 2019-10-24 13:54:58 -07:00
John Benediktsson f513a14e1c prettyprint.backend: print up to length-limit lists. 2019-10-24 09:09:17 -07:00
John Benediktsson 6cc7ca2a97 prettyprint.backend: print only cons-states. 2019-10-16 10:11:46 -07:00
John Benediktsson 4b45df48f8 prettyprint.backend: lists only print car and "~more~" for cdr. 2019-10-16 10:01:56 -07:00
Doug Coleman 114f58d894 lists: Add list literals.
Fixes #2019.
2019-10-16 09:10:41 -07:00