]>
gitweb.factorcode.org Git - factor.git/log
Doug Coleman [Fri, 3 Jan 2020 19:03:52 +0000 (13:03 -0600)]
Revert "Replace "n>win32-error-string throw" with windows-error instance throwing"
This reverts commit
70d08ce743d8bae6001f28baf8cc0f13afc93c10 .
Doug Coleman [Fri, 3 Jan 2020 19:03:10 +0000 (13:03 -0600)]
Revert "Replace "win32-error-string throw" with windows-error instance throwing"
This reverts commit
2dfb3b3a73bd2ac1200b9f5f7161a2510a98cebc .
Doug Coleman [Fri, 3 Jan 2020 19:02:57 +0000 (13:02 -0600)]
Revert "windows.errors: streamline error handling and throwing"
This reverts commit
ca474dd154c8ce59b4a1e40281a4b9fc6e182a1a .
Doug Coleman [Fri, 3 Jan 2020 18:42:11 +0000 (12:42 -0600)]
io: Trim using lists.
Doug Coleman [Fri, 3 Jan 2020 16:48:24 +0000 (10:48 -0600)]
mason.disk: Better handling of free disk space.
- Works if the build directory does not exist, assuming it would be created on the root disk containing the path of the first existing parent directory
- Space calculation is wrong, we should be using the available space
- MB is GB, comment was wrong
- Call find-mount-point-info to get the real disk mount point even if the dir does not exist
John Benediktsson [Wed, 18 Dec 2019 04:03:45 +0000 (20:03 -0800)]
timers: simplify by setting delay-nanos directly.
John Benediktsson [Sat, 14 Dec 2019 03:31:17 +0000 (19:31 -0800)]
misc/vim: update syntax for cartesian-find.
John Benediktsson [Sat, 14 Dec 2019 03:30:22 +0000 (19:30 -0800)]
sequences.product: adding product-find.
John Benediktsson [Sat, 14 Dec 2019 03:20:27 +0000 (19:20 -0800)]
sequences: adding cartesian-find.
John Benediktsson [Fri, 13 Dec 2019 23:31:49 +0000 (15:31 -0800)]
timers: allow timers to re-use threads when restarted, simplify.
Throw an error if started twice.
John Benediktsson [Fri, 13 Dec 2019 23:09:24 +0000 (15:09 -0800)]
tensors: faster tensor/number operations by forcing floats.
Nandeeka Nayak [Tue, 29 Oct 2019 17:09:38 +0000 (10:09 -0700)]
tensors: optimize matrix operations.
tensors: Add benchmarking file
tensors: Add addition and multiplication tests for benchmarking
tensors: inlined slicing to improve metrics.
tensors: fix help-lint warnings.
tensors: restore newer matmul
tensors: add fixnum declaration.
tensors: away with you, unsafe!
tensors: transpose added to benchmarks
tensors: optimize matmul to be within an order of magnitude of np.
tensors: remove type declaration.
tensors: optimize matmul.
John Benediktsson [Fri, 13 Dec 2019 22:41:43 +0000 (14:41 -0800)]
misc/vim: update vim syntax keywords.
John Benediktsson [Fri, 13 Dec 2019 22:38:26 +0000 (14:38 -0800)]
core/basis/extra: using while* in a few places.
John Benediktsson [Fri, 13 Dec 2019 22:35:51 +0000 (14:35 -0800)]
kernel: adding while* that passes the predicate result to the body.
nomennescio [Tue, 5 Nov 2019 12:57:09 +0000 (13:57 +0100)]
Support for MinGW compiler. Need to instal MinGW compiler and runtime.
Doug Coleman [Mon, 9 Dec 2019 18:12:07 +0000 (10:12 -0800)]
.travis: Don't upgrade ruby, it takes too long.
Doug Coleman [Mon, 9 Dec 2019 17:56:15 +0000 (09:56 -0800)]
.travis: install correct version of ruby
Doug Coleman [Mon, 9 Dec 2019 17:50:59 +0000 (09:50 -0800)]
.travis: rvm reload
Doug Coleman [Mon, 9 Dec 2019 17:43:27 +0000 (09:43 -0800)]
.travis: use newer ruby and turn off brew updating
Doug Coleman [Mon, 9 Dec 2019 17:35:13 +0000 (09:35 -0800)]
travis: upgrade rvm first
Doug Coleman [Sun, 8 Dec 2019 20:20:30 +0000 (12:20 -0800)]
.travis: more testing
Doug Coleman [Sun, 8 Dec 2019 20:12:37 +0000 (12:12 -0800)]
.travis: fixing ruby?
Doug Coleman [Sun, 8 Dec 2019 20:07:38 +0000 (12:07 -0800)]
.travis: Delete old rubygems after we install it.
Doug Coleman [Sun, 8 Dec 2019 19:58:06 +0000 (11:58 -0800)]
.travis: Trying to fix macos.
/usr/local/Homebrew/Library/Homebrew/brew.rb:10:in `<main>': Homebrew must be run under Ruby 2.6! You're running 2.3.3. (RuntimeError)
The command "if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew ls --versions snappy > /dev/null || brew install snappy; fi" failed and exited with 1 during .
Your build has been stopped.
Doug Coleman [Sun, 8 Dec 2019 19:48:59 +0000 (11:48 -0800)]
.travis.yml: Don't run long-running tests.
John Benediktsson [Sun, 8 Dec 2019 17:06:55 +0000 (09:06 -0800)]
tools.test: adding a warning for possible long unit tests.
This will help us learn which tests are the slowest on Travis.
Cat Stevens [Sun, 4 Feb 2018 05:00:21 +0000 (00:00 -0500)]
math.matrices: rewrite, modernize and overhaul
math.matrices.elimination: move to extra
math.matrices.extras: expand with esoteric, less-used and unfinished code from basis
- math.matrices and .extras receive more words, tests, and docs
- matrix has become a predicate class
- 94% of matrices words have complete docs
- 77% of matrices.extras words have complete docs
- much more consistent naming for constructors etc
- added missing words / features such as main-diagonal and anti-transpose
- optimizations
- lots of documentation
Doug Coleman [Sat, 7 Dec 2019 23:54:57 +0000 (15:54 -0800)]
webapps.pastebin: Cleaner url derivation, better variable names
Doug Coleman [Sat, 7 Dec 2019 18:40:35 +0000 (10:40 -0800)]
webapps.pastebin: fix
Doug Coleman [Sat, 7 Dec 2019 18:38:49 +0000 (10:38 -0800)]
webapps.pastebin: fix using. oops.
Doug Coleman [Sat, 7 Dec 2019 18:29:07 +0000 (10:29 -0800)]
webapps.pastebin: Fix the url
Doug Coleman [Sat, 7 Dec 2019 17:58:01 +0000 (09:58 -0800)]
websites.concatenative: endpoint for syncing github to factorcode
Doug Coleman [Sat, 7 Dec 2019 17:48:03 +0000 (09:48 -0800)]
webapps.pastebin: Email a list on every paste.
John Benediktsson [Thu, 5 Dec 2019 22:15:47 +0000 (14:15 -0800)]
llvm.ffi: adding macOS location (when using homebrew).
Rudi Grinberg [Fri, 29 Nov 2019 05:46:53 +0000 (12:46 +0700)]
Redirect when using curl
Signed-off-by: Rudi Grinberg <me@rgrinberg.com>
Alexander Iljin [Tue, 28 Jun 2016 22:55:15 +0000 (01:55 +0300)]
windows.errors: streamline error handling and throwing
Alexander Iljin [Tue, 28 Jun 2016 22:23:36 +0000 (01:23 +0300)]
Replace "win32-error-string throw" with windows-error instance throwing
Remove win32-error-string, because there was only one place it was used in.
Alexander Iljin [Tue, 28 Jun 2016 22:20:38 +0000 (01:20 +0300)]
Replace "n>win32-error-string throw" with windows-error instance throwing
Alexander Iljin [Tue, 24 May 2016 17:42:48 +0000 (20:42 +0300)]
Delete throw-win32-error, replace with win32-error calls
Alexander Iljin [Tue, 24 May 2016 17:40:11 +0000 (20:40 +0300)]
io.files.windows: replace "-1 <alien>" with INVALID_HANDLE_VALUE
Alexander Iljin [Tue, 24 May 2016 17:33:19 +0000 (20:33 +0300)]
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.
Alexander Iljin [Tue, 24 May 2016 17:30:02 +0000 (20:30 +0300)]
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.
Niklas Larsson [Thu, 31 Oct 2019 12:41:22 +0000 (13:41 +0100)]
Don't use rm from the nmake build.
John Benediktsson [Sun, 24 Nov 2019 23:43:29 +0000 (15:43 -0800)]
tensors: fix help-lint warnings.
Nandeeka Nayak [Tue, 29 Oct 2019 17:09:38 +0000 (10:09 -0700)]
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
Doug Coleman [Sun, 17 Nov 2019 00:58:36 +0000 (18:58 -0600)]
Add description of '-help' switch to documentation. (#2221)
Alexander Iljin [Thu, 14 Nov 2019 18:03:13 +0000 (19:03 +0100)]
random.passwords: new vocab
Cat Stevens [Sun, 10 Nov 2019 00:56:24 +0000 (19:56 -0500)]
soundex: move to extra as it's unused; fix authors.txt filename
Cat Stevens [Sat, 9 Nov 2019 22:08:24 +0000 (17:08 -0500)]
help.lint.coverage: fix for shadowing "empty" word; prevent the other test-only words from being shadowed too
John Benediktsson [Sat, 9 Nov 2019 18:02:29 +0000 (10:02 -0800)]
llvm.ffi: adding LLVMBuildMul.
nomennescio [Fri, 8 Nov 2019 12:58:33 +0000 (13:58 +0100)]
Add description of '-help' switch to documentation.
John Benediktsson [Fri, 8 Nov 2019 05:43:22 +0000 (21:43 -0800)]
math.extras: don't shadow B (breakpoint).
John Benediktsson [Fri, 8 Nov 2019 05:32:07 +0000 (21:32 -0800)]
math.extras: adding integer-sqrt.
John Benediktsson [Thu, 7 Nov 2019 21:13:05 +0000 (13:13 -0800)]
tools.test: add silent-tests? that hides unit-tests.
John Benediktsson [Thu, 7 Nov 2019 17:57:21 +0000 (09:57 -0800)]
ui.tools.listener: better future-proofing with code-completion class.
John Benediktsson [Thu, 7 Nov 2019 04:16:48 +0000 (20:16 -0800)]
project-euler.common: cleanup.
John Benediktsson [Thu, 7 Nov 2019 04:12:55 +0000 (20:12 -0800)]
math.primes.factors: flush in unix-factor.
John Benediktsson [Thu, 7 Nov 2019 04:05:53 +0000 (20:05 -0800)]
project-euler: cleanup main vocab, don't USE: the children.
John Benediktsson [Thu, 7 Nov 2019 04:00:53 +0000 (20:00 -0800)]
project-euler.064: adding description and SOLUTION:.
John Benediktsson [Thu, 7 Nov 2019 03:56:56 +0000 (19:56 -0800)]
project-euler.087: adding description and SOLUTION:.
John Benediktsson [Thu, 7 Nov 2019 03:40:37 +0000 (19:40 -0800)]
math.floats.half: improve the roundtrip of subnormal float16.
John Benediktsson [Thu, 7 Nov 2019 02:17:29 +0000 (18:17 -0800)]
benchmark.cuckoo-filters: adding a new benchmark.
John Benediktsson [Wed, 6 Nov 2019 22:13:13 +0000 (14:13 -0800)]
classes.union: faster builtin-class check, for example sequence?.
John Benediktsson [Wed, 6 Nov 2019 20:16:19 +0000 (12:16 -0800)]
ui.tools.listener: handle history-completion popup differently.
John Benediktsson [Wed, 6 Nov 2019 20:03:01 +0000 (12:03 -0800)]
math.extras: adding a more exact sum for floats.
John Benediktsson [Wed, 6 Nov 2019 17:29:31 +0000 (09:29 -0800)]
ui.tools.listener: close completion-popup when completion-mode changes.
John Benediktsson [Wed, 6 Nov 2019 16:12:39 +0000 (08:12 -0800)]
command-line.startup: adding version argument.
$ ./factor -version
Factor 0.99
John Benediktsson [Wed, 6 Nov 2019 16:09:16 +0000 (08:09 -0800)]
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
Cat Stevens [Sun, 3 Nov 2019 18:41:45 +0000 (13:41 -0500)]
basis/system-info.linux: fix test for Linux kernel 5.x
John Benediktsson [Tue, 5 Nov 2019 18:19:32 +0000 (10:19 -0800)]
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 )
John Benediktsson [Thu, 31 Oct 2019 21:55:47 +0000 (14:55 -0700)]
spelling: minor cleanup.
John Benediktsson [Thu, 31 Oct 2019 17:45:54 +0000 (10:45 -0700)]
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.
John Benediktsson [Thu, 31 Oct 2019 17:45:36 +0000 (10:45 -0700)]
math.intervals: simplify interval-bitand.
John Benediktsson [Thu, 31 Oct 2019 17:27:29 +0000 (10:27 -0700)]
math.partial-dispatch: simplify using fry.
John Benediktsson [Thu, 31 Oct 2019 17:27:17 +0000 (10:27 -0700)]
math.intervals: improve interval-bitand.
John Benediktsson [Thu, 31 Oct 2019 17:03:44 +0000 (10:03 -0700)]
compiler.tree.propagation: fix test for improved interval-bitor.
John Benediktsson [Wed, 30 Oct 2019 16:47:04 +0000 (09:47 -0700)]
math.intervals: remove extra non-interval tests.
timor [Thu, 29 Aug 2019 06:19:57 +0000 (08:19 +0200)]
math.intervals.tests: clean up literal syntax
timor [Wed, 28 Aug 2019 10:32:14 +0000 (12:32 +0200)]
math.intervals: more exact interval-bitxor operation
- fixed: `interval-bitxor` caused bit-growth
- improved: `interval-bitxor` more exact case for negative intervals
timor [Wed, 28 Aug 2019 09:27:07 +0000 (11:27 +0200)]
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.
John Benediktsson [Sat, 26 Oct 2019 00:53:06 +0000 (17:53 -0700)]
classes.algebra: update forgotten test for flatten-class.
John Benediktsson [Fri, 25 Oct 2019 03:38:05 +0000 (20:38 -0700)]
math.vectors: use $sequence in docs.
John Benediktsson [Thu, 24 Oct 2019 21:14:01 +0000 (14:14 -0700)]
classes.union: woops, reduce in fast-union-mask.
John Benediktsson [Thu, 24 Oct 2019 21:12:26 +0000 (14:12 -0700)]
classes.algebra: change (flatten-class) to use arrays.
John Benediktsson [Thu, 24 Oct 2019 21:10:41 +0000 (14:10 -0700)]
classes: update docs with $sequence.
John Benediktsson [Thu, 24 Oct 2019 20:54:58 +0000 (13:54 -0700)]
math.floats.env: use $sequence in docs.
John Benediktsson [Thu, 24 Oct 2019 16:09:17 +0000 (09:09 -0700)]
prettyprint.backend: print up to length-limit lists.
John Benediktsson [Wed, 16 Oct 2019 17:11:46 +0000 (10:11 -0700)]
prettyprint.backend: print only cons-states.
John Benediktsson [Wed, 16 Oct 2019 17:01:56 +0000 (10:01 -0700)]
prettyprint.backend: lists only print car and "~more~" for cdr.
Doug Coleman [Sat, 14 Jul 2018 01:36:07 +0000 (20:36 -0500)]
lists: Add list literals.
Fixes #2019.
timor [Wed, 16 Oct 2019 12:10:26 +0000 (14:10 +0200)]
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.
Kye W. Shi [Tue, 15 Oct 2019 17:45:45 +0000 (10:45 -0700)]
add shell.nix for building/running on NixOS
Kye W. Shi [Tue, 15 Oct 2019 17:38:38 +0000 (10:38 -0700)]
project-euler: add solutions to 064, 087
John Benediktsson [Sun, 6 Oct 2019 10:41:10 +0000 (03:41 -0700)]
talks.otug-talk: forgot a second $link.
John Benediktsson [Sat, 5 Oct 2019 23:40:57 +0000 (16:40 -0700)]
talks.olug-talk: fix link to new syntax _.
John Benediktsson [Sat, 5 Oct 2019 21:32:35 +0000 (14:32 -0700)]
alien.data.map: fix use of _ for fry change.
Doug Coleman [Sat, 5 Oct 2019 17:04:14 +0000 (12:04 -0500)]
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.
Doug Coleman [Sat, 5 Oct 2019 17:02:30 +0000 (12:02 -0500)]
furnace.utilities: Allow for unloaded vocab to pass help-lint.
Doug Coleman [Sat, 5 Oct 2019 16:03:22 +0000 (16:03 +0000)]
furnace.redirection: Fix for unloaded vocabularies in lint.