Commit Graph

31212 Commits (a3e55c20c83f933f7619cac9dd6538487fd8846c)

Author SHA1 Message Date
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
timor 3c789cb0a7 Simplify nix shell environment
`buildFHSUserEnv` uses `chroot` to create a kind of sandbox environment.  This
change uses a simpler mechanism, and also provides the necessary libraries for
running all the demos.
2019-10-16 08:57:47 -07:00
Kye W. Shi b02ae64e91 add shell.nix for building/running on NixOS 2019-10-15 11:26:20 -07:00
Kye W. Shi 5f2ace09d2 project-euler: add solutions to 064, 087 2019-10-15 11:25:39 -07:00
John Benediktsson 840ecce776 talks.otug-talk: forgot a second $link. 2019-10-06 03:41:10 -07:00
John Benediktsson 85d7fc9d30 talks.olug-talk: fix link to new syntax _. 2019-10-05 16:40:57 -07:00
John Benediktsson 28f0f471d3 alien.data.map: fix use of _ for fry change. 2019-10-05 14:33:05 -07:00
Doug Coleman 78c3a99a31 zealot.help-lint: Add a help-lint for travisci that ignores a lot of flaky resource leaks.
Some work needs to be done with ensuring that resources are cleaned up before reporting resource leaks and exiting. In the meantime, we want TravisCI to be useful enough to catch help-lint errors, so ignore a bunch of errors that it might find. These leaks are still tested for in the more thorough mason CI.
2019-10-05 12:04:14 -05:00