]> gitweb.factorcode.org Git - factor.git/log
factor.git
5 years agocore: fryable work. modern-harvey3-triple
Doug Coleman [Sat, 27 Oct 2018 20:52:52 +0000 (16:52 -0400)]
core: fryable work.

5 years agofactor: Working on making locals-everywhere, array literals constructed
Doug Coleman [Wed, 24 Oct 2018 20:59:22 +0000 (16:59 -0400)]
factor: Working on making locals-everywhere, array literals constructed
by ``output>array``, and fry with arrays.

We need to expand macros before doing the locals transform ``rewrite-closures`` and fry needs to happen in the locals pass because the locals pass touches the retainstack as part of the transform and we only want to do this once. We defer fry by making a <fryable> which rewrite-closures transforms.

Fixes things like the following that used to break because the locals
transform happened before fry.

::: bar ( a b -- a ) '[ |[ a | a _ + ] call ] call ;

Also we can use fry in case/cond now since macro-expansion happens
first.

Things like this work:
::: foo ( a b c -- a ) :> ( a b c ) c q{{ a b c a b + c _ }} ;
1 2 4 foo ...
{ 1 2 4 3 4 4 }

Triple colon will become colon soon.

Finally, there is a potential issue with macros changing the order of
fry underscore expansion since fry happens later. We need to rewrite fry
internally as 0_ 1_ 2_ so order is preserved everywhere in the expanded
macro.

5 years agomachine-learning.one-hot: Better error checking.
Doug Coleman [Sat, 8 Sep 2018 14:33:00 +0000 (09:33 -0500)]
machine-learning.one-hot: Better error checking.

5 years agobuild.sh: Bad syntax for fetch command.
Doug Coleman [Sat, 8 Sep 2018 14:32:38 +0000 (09:32 -0500)]
build.sh: Bad syntax for fetch command.

5 years agoMerge remote-tracking branch 'origin/master' into modern-harvey3
Doug Coleman [Tue, 4 Sep 2018 05:09:24 +0000 (00:09 -0500)]
Merge remote-tracking branch 'origin/master' into modern-harvey3

5 years agofactor: Rename short to shorted. rename setup-each. fix usings.
Doug Coleman [Tue, 4 Sep 2018 05:08:41 +0000 (00:08 -0500)]
factor: Rename short to shorted. rename setup-each. fix usings.

5 years agoeditors.emacs: change emacsclient-args to fully override default arguments.
John Benediktsson [Mon, 3 Sep 2018 15:06:26 +0000 (08:06 -0700)]
editors.emacs: change emacsclient-args to fully override default arguments.

5 years agoMerge remote-tracking branch 'origin/master' into modern-harvey3
Doug Coleman [Wed, 29 Aug 2018 02:03:46 +0000 (21:03 -0500)]
Merge remote-tracking branch 'origin/master' into modern-harvey3

5 years agococoa.messages: Add a Cocoa union type to import NSData.
Doug Coleman [Tue, 28 Aug 2018 02:01:38 +0000 (21:01 -0500)]
cocoa.messages: Add a Cocoa union type to import NSData.

Fixes bootstrap for macOS 10.14 for the error:
```
no-objc-type
name "("
```

Fixes #2059.

5 years agozealot.cli-test-changed-vocabs: Fix using and stack effect.
Doug Coleman [Mon, 27 Aug 2018 01:24:45 +0000 (20:24 -0500)]
zealot.cli-test-changed-vocabs: Fix using and stack effect.

I changed the code in the wrong branch.

5 years agozealot.cli-test-changed-vocabs: The ``test`` word tests all child vocabs in the hiera...
Doug Coleman [Sun, 26 Aug 2018 21:53:38 +0000 (16:53 -0500)]
zealot.cli-test-changed-vocabs: The ``test`` word tests all child vocabs in the hierarchy, ``test-vocab`` tests only the specific vocabulary.

This should test fewer vocabularies and find more bugs where vocabularies are expected to be loaded but aren't loaded.

5 years agoMerge branch 'modern-harvey3' of factorcode.org:/git/factor into modern-harvey3
Doug Coleman [Fri, 24 Aug 2018 21:49:44 +0000 (16:49 -0500)]
Merge branch 'modern-harvey3' of factorcode.org:/git/factor into modern-harvey3

5 years agoMerge remote-tracking branch 'origin/master' into modern-harvey3
Doug Coleman [Fri, 24 Aug 2018 21:49:34 +0000 (16:49 -0500)]
Merge remote-tracking branch 'origin/master' into modern-harvey3

5 years agotimers: simplify stop-timer.
John Benediktsson [Fri, 24 Aug 2018 03:37:20 +0000 (20:37 -0700)]
timers: simplify stop-timer.

5 years agotimers: fix issue with restart-timer after timer went off.
John Benediktsson [Fri, 24 Aug 2018 03:32:01 +0000 (20:32 -0700)]
timers: fix issue with restart-timer after timer went off.

5 years agoRevert "alien.data: Make with-scoped-allocation an $unchecked-example because it...
John Benediktsson [Tue, 21 Aug 2018 20:12:28 +0000 (13:12 -0700)]
Revert "alien.data: Make with-scoped-allocation an $unchecked-example because it's breaking travisci"

This reverts commit 739fb5d94f827fbc2377faf08173ba5f43aa3d00.

5 years agobuild.sh: final two local vars
Cat Stevens [Sun, 19 Aug 2018 11:30:03 +0000 (07:30 -0400)]
build.sh: final two local vars

5 years agobuild.sh: pacman: never use -S without -yu syncing
Cat Stevens [Sat, 18 Aug 2018 15:24:14 +0000 (11:24 -0400)]
build.sh: pacman: never use -S without -yu syncing

https://wiki.archlinux.org/index.php/Pacman#Usage

5 years agobuild.sh: more variables are local
Cat Stevens [Fri, 17 Aug 2018 23:56:31 +0000 (19:56 -0400)]
build.sh: more variables are local

5 years agobuild.sh: correctness / safety and fixups
Cat Stevens [Fri, 17 Aug 2018 00:26:16 +0000 (20:26 -0400)]
build.sh: correctness / safety and fixups

5 years agosplitting-docs: mention two existing words in documentation
Alexander Iljin [Sun, 5 Aug 2018 18:24:13 +0000 (20:24 +0200)]
splitting-docs: mention two existing words in documentation

5 years ago*-docs: remove extra space character at the end of paragraghs
Alexander Iljin [Wed, 18 Jul 2018 13:54:21 +0000 (20:54 +0700)]
*-docs: remove extra space character at the end of paragraghs

5 years agorosetta-code.ternary-logic: add a missing type cast to t=
Alexander Iljin [Mon, 30 Jul 2018 07:14:32 +0000 (09:14 +0200)]
rosetta-code.ternary-logic: add a missing type cast to t=

5 years agorosetta-code.ternary-logic: remove useless type casts before drops
Alexander Iljin [Mon, 30 Jul 2018 07:13:59 +0000 (09:13 +0200)]
rosetta-code.ternary-logic: remove useless type casts before drops

5 years agoRevert "io.files.temp: When using temp-file, it's possible that it fails since"
John Benediktsson [Tue, 21 Aug 2018 17:44:10 +0000 (10:44 -0700)]
Revert "io.files.temp: When using temp-file, it's possible that it fails since"

This reverts commit a274f9943760cd6c72a38ffa59c0ca605f3bc09a.

5 years agoio.files.temp: When using temp-file, it's possible that it fails since
Doug Coleman [Mon, 13 Aug 2018 02:12:58 +0000 (21:12 -0500)]
io.files.temp: When using temp-file, it's possible that it fails since
the temporary-directory does not exist yet.

Always check if the directory exists and create it if not.

5 years agoio.files.temp: When using temp-file, it's possible that it fails since
Doug Coleman [Mon, 13 Aug 2018 02:12:58 +0000 (21:12 -0500)]
io.files.temp: When using temp-file, it's possible that it fails since
the temporary-directory does not exist yet.

Always check if the directory exists and create it if not.

5 years agomodern: Fix using lists.
Doug Coleman [Mon, 13 Aug 2018 02:12:43 +0000 (21:12 -0500)]
modern: Fix using lists.

5 years agoMerge remote-tracking branch 'origin/master' into modern-harvey3
Doug Coleman [Sun, 12 Aug 2018 22:56:14 +0000 (17:56 -0500)]
Merge remote-tracking branch 'origin/master' into modern-harvey3

5 years agowebapps.help: All docs.factorcode.org traffic should go to https.
Doug Coleman [Sun, 12 Aug 2018 22:47:08 +0000 (17:47 -0500)]
webapps.help: All docs.factorcode.org traffic should go to https.

Per request on irc.

5 years agowebapps.help: All docs.factorcode.org traffic should go to https.
Doug Coleman [Sun, 12 Aug 2018 22:47:08 +0000 (17:47 -0500)]
webapps.help: All docs.factorcode.org traffic should go to https.

Per request on irc.

5 years agofurnance.auth: fix documentation 2038/head
Benjamin Pollack [Sun, 12 Aug 2018 15:11:55 +0000 (11:11 -0400)]
furnance.auth: fix documentation

The docs were attempting to reference the CouchDB auth provider, but
that fails, because the help vocab didn't include furnance.auth.couchdb.
Since the CouchDB auth vocab has some pretty serious caveats (see its
docs), remove it entirely for now.

Also fixes two minor typos in the furnace.auth.couchdb docs.

5 years ago.gitignore: only ignore logs and work in root 2028/head
Benjamin Pollack [Thu, 2 Aug 2018 21:04:50 +0000 (17:04 -0400)]
.gitignore: only ignore logs and work in root

5 years ago.gitignore: ignore Unix and macOS binaries
Benjamin Pollack [Thu, 2 Aug 2018 18:39:37 +0000 (14:39 -0400)]
.gitignore: ignore Unix and macOS binaries

5 years ago.gitignore: sort ignores
Benjamin Pollack [Thu, 2 Aug 2018 18:37:55 +0000 (14:37 -0400)]
.gitignore: sort ignores

5 years agofactor: Add more parser guts.
Doug Coleman [Fri, 10 Aug 2018 23:01:19 +0000 (18:01 -0500)]
factor: Add more parser guts.

5 years agofactor: Rename all #foo words except # so # can be a sigil.
Doug Coleman [Fri, 10 Aug 2018 18:04:49 +0000 (13:04 -0500)]
factor: Rename all #foo words except # so # can be a sigil.

5 years agolexer: Add #hashtag support.
Doug Coleman [Fri, 10 Aug 2018 15:42:00 +0000 (10:42 -0500)]
lexer: Add #hashtag support.

5 years agoalien tests: use UNIT-TEST: for fun
Doug Coleman [Fri, 10 Aug 2018 13:54:10 +0000 (08:54 -0500)]
alien tests: use UNIT-TEST: for fun

5 years agotools.test: add MUST-FAIL: and MUST-FAIL-WITH:, still need named versions of these
Doug Coleman [Fri, 10 Aug 2018 13:53:40 +0000 (08:53 -0500)]
tools.test: add MUST-FAIL: and MUST-FAIL-WITH:, still need named versions of these

5 years agocalendar.parser: fix : in word name
Doug Coleman [Fri, 10 Aug 2018 02:04:08 +0000 (22:04 -0400)]
calendar.parser: fix : in word name

5 years agocore: Remove some foo'bar words and a lot of postpone:
Doug Coleman [Fri, 10 Aug 2018 01:53:17 +0000 (21:53 -0400)]
core: Remove some foo'bar words and a lot of postpone:

5 years agofactor: char: a -> ch'a.
Doug Coleman [Thu, 9 Aug 2018 22:02:38 +0000 (18:02 -0400)]
factor: char: a -> ch'a.

Also all contractions are not allowed in word names anymore. Even Data cannot use contractions...

5 years agoparser: Refactor the parser some. scan-datum vs scan-token come on...
Doug Coleman [Thu, 9 Aug 2018 21:21:06 +0000 (17:21 -0400)]
parser: Refactor the parser some. scan-datum vs scan-token come on...

5 years agolexer: Add char: \' support. Fix ch'\' support
Doug Coleman [Thu, 9 Aug 2018 20:13:50 +0000 (16:13 -0400)]
lexer: Add char: \' support. Fix ch'\' support

5 years agoparser: Add ``tag'payload`` and ``tag: payload``
Doug Coleman [Thu, 9 Aug 2018 19:59:12 +0000 (15:59 -0400)]
parser: Add ``tag'payload`` and ``tag: payload``

5 years agosequences: Add cut-head and cut-tail.
Doug Coleman [Tue, 7 Aug 2018 20:52:51 +0000 (16:52 -0400)]
sequences: Add cut-head and cut-tail.

5 years agoalien.libraries.finder: Roll the *.os vocabs back into alien.libraries.finder for...
Doug Coleman [Tue, 7 Aug 2018 20:34:25 +0000 (16:34 -0400)]
alien.libraries.finder: Roll the *.os vocabs back into alien.libraries.finder for fun.

5 years agolistener: crazy syntax for homoiconic stack
Doug Coleman [Tue, 7 Aug 2018 20:33:48 +0000 (16:33 -0400)]
listener: crazy syntax for homoiconic stack

5 years agomodern: Fix rewriting ![[ ]] and ![=[ ]=]
Doug Coleman [Tue, 7 Aug 2018 19:06:45 +0000 (15:06 -0400)]
modern: Fix rewriting ![[ ]] and ![=[ ]=]

5 years agobootstrap.syntax: dead code -> deleted
Doug Coleman [Tue, 7 Aug 2018 18:40:31 +0000 (14:40 -0400)]
bootstrap.syntax: dead code -> deleted

5 years agobootstrap.layouts: calculate num-types
Doug Coleman [Tue, 7 Aug 2018 18:27:25 +0000 (14:27 -0400)]
bootstrap.layouts: calculate num-types

5 years agocore: trim down some usings.
Doug Coleman [Tue, 7 Aug 2018 14:58:17 +0000 (10:58 -0400)]
core: trim down some usings.

5 years agomodern: fix rewriting backslashes and whitespace.
Doug Coleman [Tue, 7 Aug 2018 13:55:26 +0000 (09:55 -0400)]
modern: fix rewriting backslashes and whitespace.

5 years agoparser: fix using
Doug Coleman [Tue, 7 Aug 2018 13:45:11 +0000 (09:45 -0400)]
parser: fix using

5 years agofactor: SYMBOL: foo foo [ bar ] initialize -> INITIALIZED-SYMBOL: foo [ bar ]
Doug Coleman [Sun, 5 Aug 2018 01:53:05 +0000 (21:53 -0400)]
factor: SYMBOL: foo  foo [ bar ] initialize -> INITIALIZED-SYMBOL: foo [ bar ]

5 years agovocabs.platforms: Execute top-level code if there is any in <FOO FOO> sections.
Doug Coleman [Sat, 4 Aug 2018 23:49:07 +0000 (19:49 -0400)]
vocabs.platforms: Execute top-level code if there is any in <FOO FOO> sections.

5 years agodns: Remove evil platform files.
Doug Coleman [Sat, 4 Aug 2018 15:12:54 +0000 (11:12 -0400)]
dns: Remove evil platform files.

5 years agohelp: Allow factor[[]] as $example
Doug Coleman [Sat, 4 Aug 2018 15:04:03 +0000 (11:04 -0400)]
help: Allow factor[[]] as $example

5 years agomodern.compiler: add more arity words and dead code
Doug Coleman [Sat, 4 Aug 2018 14:01:43 +0000 (10:01 -0400)]
modern.compiler: add more arity words and dead code

5 years agodns: use <OS
Doug Coleman [Sat, 4 Aug 2018 14:01:34 +0000 (10:01 -0400)]
dns: use <OS

5 years agocore: Add factor[[ ]] and <factor> to hold Factor strings.
Doug Coleman [Sat, 4 Aug 2018 13:47:47 +0000 (09:47 -0400)]
core: Add factor[[ ]] and <factor> to hold Factor strings.

5 years agocore: <WINDOWS <MACOS <UNIX <LINUX in core.
Doug Coleman [Sat, 4 Aug 2018 13:32:09 +0000 (09:32 -0400)]
core: <WINDOWS <MACOS <UNIX <LINUX in core.

5 years agohelp.tutorial: use array for test output 2032/head
Mohamed Akram [Sat, 4 Aug 2018 13:24:39 +0000 (17:24 +0400)]
help.tutorial: use array for test output

5 years agohelp.tutorial: fix unicode vocabulary path
Mohamed Akram [Sat, 4 Aug 2018 13:23:29 +0000 (17:23 +0400)]
help.tutorial: fix unicode vocabulary path

5 years agocore: Add private word.
Doug Coleman [Sat, 4 Aug 2018 13:04:51 +0000 (09:04 -0400)]
core: Add private word.

5 years agofactor: Fix some syntax errors.
Doug Coleman [Sat, 4 Aug 2018 02:36:21 +0000 (22:36 -0400)]
factor: Fix some syntax errors.

5 years agomodern: Fix \\ to do nothing.
Doug Coleman [Sat, 4 Aug 2018 02:35:13 +0000 (22:35 -0400)]
modern: Fix \\ to do nothing.

5 years agomodern.out: Write literals better.
Doug Coleman [Fri, 3 Aug 2018 21:22:00 +0000 (17:22 -0400)]
modern.out: Write literals better.

5 years agomodern.out: Don't write an extra newline to the end of files.
Doug Coleman [Fri, 3 Aug 2018 15:36:45 +0000 (11:36 -0400)]
modern.out: Don't write an extra newline to the end of files.

5 years agomodern: Save whitespace...seems to just work?
Doug Coleman [Fri, 3 Aug 2018 15:31:07 +0000 (11:31 -0400)]
modern: Save whitespace...seems to just work?

5 years agosequences.extras: Fix merge-slices
Doug Coleman [Fri, 3 Aug 2018 15:28:47 +0000 (11:28 -0400)]
sequences.extras: Fix merge-slices

5 years agoeditors.ui: merge the authors file hanging around on my local repo.
Doug Coleman [Fri, 3 Aug 2018 14:39:30 +0000 (10:39 -0400)]
editors.ui: merge the authors file hanging around on my local repo.

5 years agoalien.data: Make with-scoped-allocation an $unchecked-example because it's breaking...
Doug Coleman [Fri, 3 Aug 2018 14:38:42 +0000 (10:38 -0400)]
alien.data: Make with-scoped-allocation an $unchecked-example because it's breaking travisci

5 years agofactor: fixing [[ ]] and some unit tests modern-harvey2
Doug Coleman [Thu, 2 Aug 2018 22:29:04 +0000 (18:29 -0400)]
factor: fixing [[ ]] and some unit tests

5 years agotools.hexdump: use re-decode.
John Benediktsson [Thu, 2 Aug 2018 20:34:38 +0000 (13:34 -0700)]
tools.hexdump: use re-decode.

5 years agofactor: Let url"" and sbuf"" work without spaces.
Doug Coleman [Thu, 2 Aug 2018 14:37:02 +0000 (10:37 -0400)]
factor: Let url"" and sbuf"" work without spaces.

Also url[[]] if you define a url[[ word.

5 years agofactor: fix load-all
Doug Coleman [Thu, 2 Aug 2018 13:23:30 +0000 (09:23 -0400)]
factor: fix load-all

5 years agomodern.out: Fix using
Doug Coleman [Thu, 2 Aug 2018 12:49:20 +0000 (08:49 -0400)]
modern.out: Fix using

5 years agopcre: fix ::
Doug Coleman [Thu, 2 Aug 2018 12:39:31 +0000 (08:39 -0400)]
pcre: fix ::

5 years agoRevert "factor: vocab:word -> vocab::word"
Doug Coleman [Thu, 2 Aug 2018 12:21:52 +0000 (08:21 -0400)]
Revert "factor: vocab:word -> vocab::word"

This reverts commit 354f1cbd34741d6ffcdc867b4ef72676bf80f8a0.

5 years agoalien.library: fix docs circularity
Doug Coleman [Thu, 2 Aug 2018 12:06:16 +0000 (08:06 -0400)]
alien.library: fix docs circularity

5 years agofactor: more char:
Doug Coleman [Thu, 2 Aug 2018 12:03:45 +0000 (08:03 -0400)]
factor: more char:

5 years agoMerge remote-tracking branch 'origin/master' into modern-harvey2
Doug Coleman [Thu, 2 Aug 2018 11:57:42 +0000 (07:57 -0400)]
Merge remote-tracking branch 'origin/master' into modern-harvey2

5 years agoui.tools.listener: minor cleanup to completion stuff.
John Benediktsson [Thu, 2 Aug 2018 04:08:43 +0000 (21:08 -0700)]
ui.tools.listener: minor cleanup to completion stuff.

5 years agotools.wc: use re-decode here also.
John Benediktsson [Thu, 2 Aug 2018 04:03:40 +0000 (21:03 -0700)]
tools.wc: use re-decode here also.

5 years agotools.cat: use re-encode/re-decode.
John Benediktsson [Wed, 1 Aug 2018 21:25:25 +0000 (14:25 -0700)]
tools.cat: use re-encode/re-decode.

5 years agotools.cat: significant performance improvement using binary.
John Benediktsson [Wed, 1 Aug 2018 19:52:33 +0000 (12:52 -0700)]
tools.cat: significant performance improvement using binary.

Before (using strings): 77MiB/s
After (using byte-arrays): 3.06GiB/s

5 years agoodbc: add windows platform.txt.
John Benediktsson [Wed, 1 Aug 2018 01:12:54 +0000 (18:12 -0700)]
odbc: add windows platform.txt.

5 years agoVersion bump to 0.99 (-dev).
John Benediktsson [Tue, 31 Jul 2018 19:40:12 +0000 (12:40 -0700)]
Version bump to 0.99 (-dev).

5 years agoFactor.app: update copyrights.
John Benediktsson [Tue, 31 Jul 2018 17:19:09 +0000 (10:19 -0700)]
Factor.app: update copyrights.

5 years agoRevert "lists: Add list literal doc example." 0.98
Doug Coleman [Mon, 30 Jul 2018 17:02:42 +0000 (12:02 -0500)]
Revert "lists: Add list literal doc example."

This reverts commit 47408528d0374dd9b015a0b8d06b5d7157652890.

5 years agoRevert "lists: Add list literals."
Doug Coleman [Mon, 30 Jul 2018 17:01:28 +0000 (12:01 -0500)]
Revert "lists: Add list literals."

This reverts commit ae74a794e1ef8e76a1fbf6fe07b649662dc17874.

The listener forces lazy lists, which is not what we want. We need a different approach for prettyprinting lazy lists.

5 years agovm: Fix some really minor warnings.
Doug Coleman [Sat, 28 Jul 2018 02:35:55 +0000 (21:35 -0500)]
vm: Fix some really minor warnings.

5 years agobuild: allow any GCC version 2025/head
Benjamin Pollack [Thu, 26 Jul 2018 20:59:27 +0000 (16:59 -0400)]
build: allow any GCC version

The existing test didn't work on modern GCC; a clean fix didn't work
on modern macOS due to its aliasing gcc to clang; and the test being
done is for a version of GCC from 2013 that doesn't ship on any modern
Linux system. (RHEL7 is on GCC 4, but hasn't shipped the buggy version
either ever or since 2015, depending on which source material I look
at.)

Closes #2023

5 years agolayouts: Add 32bit? and 64bit? words.
Doug Coleman [Sun, 22 Jul 2018 16:34:29 +0000 (11:34 -0500)]
layouts: Add 32bit? and 64bit? words.

5 years agosystem: Make the git version code more robust.
Doug Coleman [Sun, 22 Jul 2018 16:32:02 +0000 (11:32 -0500)]
system: Make the git version code more robust.

Really confusing sequence errors if Factor vm isn't compiled with proper git label.

e.g. good: -DFACTOR_GIT_LABEL="heads/master-102fe6154e9deec5dff38ee70519f7bbe506f6ce"

bad: -DFACTOR_GIT_LABEL=""
before this patch gave an integer comparison error comparing ``f 16 <``

5 years agoci.run-process platforms: getting uid/gid, so unix only for now
Doug Coleman [Sat, 21 Jul 2018 20:28:43 +0000 (15:28 -0500)]
ci.run-process platforms: getting uid/gid, so unix only for now

5 years agoci: Start new vocabs.
Doug Coleman [Sat, 21 Jul 2018 20:26:37 +0000 (15:26 -0500)]
ci: Start new vocabs.

Add ci.docker for running commands in docker.
Add ci.run-process for running commands and capturing everything from their run.

USE: ci.docker USE: ci.run-process
{ "run" "hello-world" } "docker" find-in-standard-login-path prefix
ci-run-process>autopsy autopsy.

5 years agoescape-strings: Add a tag-payload word to make a string payload and tag.
Doug Coleman [Sat, 21 Jul 2018 20:18:29 +0000 (15:18 -0500)]
escape-strings: Add a tag-payload word to make a string payload and tag.