Commit Graph

4318 Commits (c041cc69f0390a668432e4b41dfa6929f855f92a)

Author SHA1 Message Date
Doug Coleman 5aa89e6251 factor: Add newlines to every line. 2017-06-01 13:46:32 -05:00
Doug Coleman e93d8f82bc core: Add TH{ for making assoc tuples.
See #1449.
https://github.com/factor/factor/issues/1449
2017-05-30 20:14:29 -05:00
Doug Coleman f3bbc30c8a namespaces: Way better implementation of with-variable-on. 2017-05-30 19:58:19 -05:00
Doug Coleman e6d0c06f17 namespaces: Add with-variable-on/off combinators. 2017-05-29 12:36:16 -05:00
John Benediktsson f75743ecf7 compiler.units: fix modify-code-heap example.
Make sure ``foo`` has the same stack effect as the quotation that is
set on ``foo`` with ``modify-code-heap``.  The symbol had a stack
effect of ( -- x ) since it pushes itself when it is called. The
quotation in the example had stack effect ( -- ).
2017-05-05 08:38:49 -07:00
John Benediktsson 1898c2bb3a sequences: fix example for unless-empty. 2017-05-03 18:24:14 -07:00
John Benediktsson 0f52366466 math: fix stack effect for unless-zero and when-zero. 2017-05-03 18:13:37 -07:00
John Benediktsson 3f04f7b013 classes.maybe: fix help-lint for docs.
Right now the examples must have stack effect ( -- ).  Some future
version might have an output stack assertion, but for now use
prettyprint to check result.
2017-03-17 13:21:36 -07:00
Alexander Iljin b1a24358f3 classes.maybe-docs: create some documentation for the maybe vocab
Integrate the pointers to the new article into existing help system,
primarily by looking for the uses of the "unions" article.
2017-03-17 08:22:18 -07:00
Alexander Iljin bad5408c76 *-docs: fix a typo in the word parametErized 2017-03-17 08:22:18 -07:00
Alexander Iljin cecbd6c602 alien-docs: fix wording 2017-03-17 08:22:18 -07:00
Alexander Iljin 4968a4f6a5 sequences-docs: add a bunch of related-words 2017-03-17 08:22:18 -07:00
Alexander Iljin a6223e1ae3 sequences-docs: simplify the head* description 2017-03-17 08:22:18 -07:00
John Benediktsson 44da4ed4dd sequences: fix filter! to allow stack arguments to be used by the quot. 2017-03-05 14:09:03 -08:00
John Benediktsson 9d3b5cb44b vocabs: simplify M\ string require. 2017-02-09 16:24:05 -08:00
John Benediktsson a8b66764d5 compiler.utilities: move conjoin-at tests. 2017-02-08 11:16:00 -08:00
John Benediktsson b51617db16 sequences: simplify (map-find). 2017-02-07 19:42:58 -08:00
John Benediktsson f4ccfa0f71 sets: moving unique/conjoin/conjoin-at to compiler.utilities. 2017-02-07 18:54:24 -08:00
John Benediktsson b5ce31cbae assocs: change assoc= to compare with = not eq?. 2017-02-07 16:40:39 -08:00
John Benediktsson 846d2315ff sets: use = instead of eq? in M\ set set=. 2017-02-07 14:54:57 -08:00
John Benediktsson bfcd68e2e9 sets: simpler M\ sequence members. 2017-02-07 14:50:58 -08:00
John Benediktsson 8dfbbc7cf2 destructors: using ?delete in unregister-disposable. 2017-02-07 13:31:43 -08:00
John Benediktsson de48558d12 sets: adding ?delete that returns a boolean if elt was deleted from set. 2017-02-07 13:31:07 -08:00
John Benediktsson 6d5775e732 continuations: don't need to init-catchstack twice from init. 2017-02-02 10:00:44 -08:00
John Benediktsson 09f11e293a io: fix stream-copy docs. 2017-01-24 20:40:29 -08:00
Jon Harper 3760c965af core.math, bignum/f, shift subnormals before rounding. Fixes #1782 2017-01-23 10:12:20 -08:00
John Benediktsson baaa06278c Revert "sequences: swap stack arguments for start/start*/subseq?."
This reverts commit 63b0593824.
2017-01-21 07:20:14 -08:00
John Benediktsson 63b0593824 sequences: swap stack arguments for start/start*/subseq?.
It is more natural to be ( seq subseq -- ? ).
2017-01-20 22:49:53 -08:00
Alexander Iljin 4fa1103179 sequences-docs: add a missing period at the end of a sentence 2017-01-20 08:21:54 -08:00
Alexander Iljin 70aa7b09c2 make-docs: fix what appears to be a oversight 2017-01-20 08:21:54 -08:00
Alexander Iljin 908ff65bef math.order[-docs]: rename parameters in between? to match those in clamp 2017-01-20 08:21:54 -08:00
Alexander Iljin 423181c867 splitting-docs: add link to slice in split-when-slice 2017-01-13 13:31:53 +03:00
Alexander Iljin 5d7299b1af sequences-docs: add some related-words 2017-01-13 13:31:48 +03:00
Alexander Iljin 429c237870 sequences-docs: fix parameter names in the <slice> description 2017-01-13 13:31:38 +03:00
John Benediktsson 7e7efe8128 sets: using reject in a couple places. 2017-01-06 14:08:42 -08:00
Jon Harper ccbf1c1429 core layouts, remove hardcoded tag width
109aa88b06 showed the places were it was hardcoded
2017-01-04 07:29:08 -08:00
Björn Lindqvist 350de8f171 classes.mixin,classes.union: moves the check-self-reference test
Should make it so you can't define self-referencing mixins, just like
you can't define self-referencing unions.
2017-01-03 06:10:12 +01:00
Björn Lindqvist 9752d2fbf5 classes.mixin.tests: fix tc not to break when forget-tests? is on 2017-01-03 04:15:57 +01:00
Alexander Iljin 16403bb0c9 math.parser: add missing blank line between words 2017-01-02 09:33:10 -08:00
Björn Lindqvist 8f28fb2587 classes.mixin: fix type checking in add-mixin-instance
One test in classes.mixin.tests intermittently breaks otherwise.
2016-12-30 16:24:34 +01:00
Björn Lindqvist a808ade3c1 classes.mixin: better name for the type checking error 2016-12-30 16:02:55 +01:00
John Benediktsson 000aa1f5a6 assocs: M\ enum >alist can be no-op because it's a sequence. 2016-12-29 11:58:55 -08:00
John Benediktsson f0251cb2ad sequences: remove (indices). 2016-12-28 16:40:27 -08:00
John Benediktsson b141e0d2fb assocs: moving collect-by from math.statistics. 2016-12-28 12:56:19 -08:00
Alexander Iljin 49961e643e vocabs.loader: stop add-vocab-root spawning extra monitoring threads
This fixes issue #1758.
2016-12-21 15:17:15 -08:00
Björn Lindqvist 073dc4686a parser.tests: fix test that broke 2016-12-06 09:08:42 +01:00
Björn Lindqvist 7abe91732f classes.*: new words contained-classes and all-contained-classes
it is to generalize the logic used for checking if union classes
self-references
2016-12-06 09:00:01 +01:00
Björn Lindqvist ba7d357a6e compiler.units: utility word filter-word-defs
requires new boot images
2016-12-05 08:55:32 +01:00
Björn Lindqvist 0142d0b078 basis/,extra/: using parse-array-def in a bunch of places 2016-12-03 13:23:24 +01:00
Björn Lindqvist 1c53e43768 parser: new parsing word parse-array-def
The idea behind this word is that in many cases parsing to an array is
much more convenient than parsing to a quotation.
2016-12-03 12:56:47 +01:00
Björn Lindqvist e629f7b289 compiler.crossref: changes the way in which dependencies are stored on words
Previosly, they were stored in three sequences in the properties
"conditional-dependencies" "effect-dependencies" and
"definition-dependencies". It seem to better to store all three
types in one big property called "dependencies".
2016-11-30 07:29:10 +01:00
Björn Lindqvist 99653bab91 compiler.crossref: better code for getting dependencies-of + tests 2016-11-28 02:04:28 +01:00
Björn Lindqvist fe0f2902a0 classes.mixin: add-mixin-instance doesn't need to be generic 2016-11-28 02:04:28 +01:00
Björn Lindqvist 3b0d5bba15 kernel.private: adding OBJ-SAMPLE-CALLSTACKS + test case 2016-11-24 05:11:46 +01:00
Björn Lindqvist d73666b9d0 VM: the unimplemented error isn't used anymore
Cause all the primitives are implemented so it can never ever be
thrown. Probably requires new boot images.
2016-11-23 10:24:52 +01:00
Björn Lindqvist c55a6ef873 VM: removing the unused callstack-bounds primitive
Probably needs new boot images
2016-11-21 22:30:20 +01:00
Björn Lindqvist e4b961a26e continuations: new words for ignoring masked errors
it comes from the db.errors vocab but seems to be useful in lots of
situations
2016-11-18 23:41:36 +01:00
Björn Lindqvist 56079afcfb Revert "bootstrap: trying to undo changes from"
This reverts commit 7b3fb61ebd.
2016-11-13 00:22:21 +01:00
Björn Lindqvist 7b3fb61ebd bootstrap: trying to undo changes from
a915d3bdb4 (#1513)

A lot of changes that built upon those changes had to be undone too. New
boot images is required.
2016-11-12 01:54:57 +01:00
John Benediktsson e91a674f95 vocabs: in create-vocab, notify-vocab-observers after updating dictionary. 2016-11-09 16:38:27 -08:00
John Benediktsson e01c57628e Revert "alien.strings: change how string>{cpu,os} works."
This reverts commit 84fe3deff8.

Probably doesn't work with deployed images that have stripped
word names, where name>> would return f.
2016-11-02 07:34:38 -07:00
John Benediktsson 84fe3deff8 alien.strings: change how string>{cpu,os} works. 2016-11-01 20:21:12 -07:00
John Benediktsson e2d2107396 system: adding new primitives. 2016-11-01 17:16:11 -07:00
Alexander Iljin 35a1ae61c3 system-docs: add article on Ctrl-Break handler 2016-11-01 16:53:01 -07:00
Björn Lindqvist b31c0b8857 Docs: bunch of random doc updates 2016-10-31 11:46:39 +01:00
Alexander Iljin 1a29e1b03e sequences-docs: fix wording 2016-10-28 09:34:53 -07:00
Björn Lindqvist 46105b62f6 VM: change callstack>array primitive so it doesn't reverse anymore
This fixes one part of the #452 bug.
2016-10-13 01:34:55 +02:00
Björn Lindqvist 32825b9f5f bootstrap.image.primitives: array>quotation can't be foldable 2016-10-09 00:47:37 +02:00
Björn Lindqvist 88b2ed482c math.parser: (format-float) can only be flushable 2016-10-09 00:47:37 +02:00
Björn Lindqvist bbd71ae975 math.parser: (format-float) doesn't need to zero-terminate returned byte-array 2016-10-09 00:47:37 +02:00
John Benediktsson 8f6ac5d457 Revert "hash-sets,hashtables: make it so the array backing the hash is non-empty"
This reverts commit 6f10f06c27.
2016-10-06 11:18:41 -07:00
John Benediktsson db46b16d10 Revert "hash-sets,hashtables: improved key@ word"
This reverts commit 70c7f9e029.
2016-10-06 11:18:35 -07:00
Björn Lindqvist 6f10f06c27 hash-sets,hashtables: make it so the array backing the hash is non-empty
Commit 70c7f9e029 made it so the code
assumes the array is not empty. But it can be empty if the hashtable is
created using "hashtable new" and then it can crash because it reads
uninitialized memory. Setting the initial of the array slot to
a valid hash-array should fix that.
2016-10-05 19:19:39 +02:00
Björn Lindqvist a6df4168af bootstrap.layouts: sync note in comments 2016-09-25 20:10:16 +02:00
Björn Lindqvist 70c7f9e029 hash-sets,hashtables: improved key@ word
Don't need to check the length of the backing array because it can be
assumed to be > 0. That should make hash lookups a little faster.
2016-09-25 20:07:08 +02:00
Alexander Iljin 3cfc4c69ff checksums-docs: add link to checksums.process-docs 2016-09-19 20:18:06 -07:00
Björn Lindqvist 3bbf421043 io.files: the paths are absolute so cwd prepend-path isn't needed 2016-09-14 14:02:11 +02:00
Björn Lindqvist 20711a0fd3 Adding escaping to CHAR: " -> CHAR: \"
It is not necessary to escape the " character, but it doesn't hurt and
is necessary for syntax-highlighting (FUEL) to work correctly.
2016-09-04 06:40:43 +02:00
Björn Lindqvist b82ea14af0 sets,compiler.cfg.stacks.global: putting the refine word in sets 2016-08-30 02:34:37 +02:00
John Benediktsson acb4dec55d Revert "io.pathnames: fix separator when appending paths in Windows"
This reverts commit b477c43293.
2016-08-23 09:54:16 -07:00
masweeney b477c43293 io.pathnames: fix separator when appending paths in Windows 2016-08-23 08:53:38 -07:00
Björn Lindqvist 67f38302d8 system: looks like the name>> accessor can be used here
So then the cpu>string and os>string words aren't needed.
2016-08-11 17:32:02 +02:00
John Benediktsson fa5441f70a Revert "assocs-docs: mark assoc-partition and partition as related words"
This reverts commit 892e41c1ce.
2016-08-10 19:42:41 -07:00
Alexander Iljin 892e41c1ce assocs-docs: mark assoc-partition and partition as related words 2016-08-10 19:42:20 -07:00
Björn Lindqvist ddc5ece757 alien.*: frontend varargs support! #1677
alien-invoke gets an extra parameter indicating if the call uses varargs
or not. In 99.9% of the cases, the parameter should be f, but is t if
varargs are indicated. E.g

: do-printf ( fmt d -- st ) int f "printf" { c-string double } t alien-invoke ;
2016-08-10 21:34:37 +02:00
Björn Lindqvist dee9cf0a70 alien: replacing the alien-*-error family of errors with callsite-not-compiled
All the errors did the same thing anyway. Also adding a summary method
to it.
2016-08-04 11:51:59 +02:00
John Benediktsson 851398898b checksums.crc32: verify checksum-state is working. 2016-08-02 13:16:30 -07:00
John Benediktsson 55df8437df checksums: fix stack effect of with-checksum-state. 2016-08-02 10:58:48 -07:00
John Benediktsson 1b54f0a434 checksums: make checksum-state implement dispose. 2016-08-01 15:46:30 -07:00
John Benediktsson 83a7592a86 checksums: making "checksum-state" a universal concept.
I'm not super happy with the design yet, partly because OpenSSL doesn't
subclass ``checksum-state`` so all ``initialize-checksum-state`` will not
return a ``checksum-state`` instance.  That could maybe be changed by making
``checksum-state`` a mixin, or perhaps some other way.
2016-07-30 09:31:10 -07:00
Alexander Iljin acd22d1218 combinators-docs: fix wording 2016-07-30 09:25:30 -07:00
Alexander Iljin 1cec145e46 math: fix stack effect declaration for the neg? generic 2016-07-30 09:25:30 -07:00
Alexander Iljin 1aded9abdd docs: replace $description with $class-description for class words 2016-07-30 09:25:30 -07:00
Alexander Iljin 2fd5654473 Add EOL at EOF for all authors.txt files for consistency
In some instances replaced CR/LF with LF.
2016-07-30 09:25:30 -07:00
Alexander Iljin 4e3dab7237 math-docs: fix a copy-paste error 2016-07-30 09:25:30 -07:00
John Benediktsson ccbde89968 vocabs.loader: one vocab-exists? word. 2016-07-16 16:21:45 -07:00
John Benediktsson 8d077a96ad using [ ... ] [ drop ] if* instead of dup [ ... ] [ 2drop ] if. 2016-07-11 21:01:03 -07:00
John Benediktsson bd630d1464 math.integers: use must-fail instead of ignore-errors. 2016-07-10 20:28:28 -07:00
John Benediktsson 5abccb1391 io.backend: remove unused normalize-directory word. 2016-06-30 14:11:24 -07:00
John Benediktsson 180bb32e86 checksums: remove doc for stream-checksum. 2016-06-30 12:34:36 -07:00
John Benediktsson 2255d6d876 checksums: some cleanup.
- define checksum-bytes and checksum-stream in terms of each other
- delete stream-checksum now that it's no longer needed
- move checksum-state stuff into checksums.common
- add a block-checksum that uses the checksum-state stuff
- change checksums.openssl to not use the checksum-state
2016-06-30 12:30:58 -07:00
John Benediktsson e146309a0c io.encodings.binary: move to core. 2016-06-30 12:30:58 -07:00
Alexander Iljin 66b9770f77 checksums: make add-checksum-bytes a generic word 2016-06-29 14:17:57 -07:00
Alexander Iljin c054cb7a78 checksums-docs: add note on using checksums.stream 2016-06-29 14:17:57 -07:00
Alexander Iljin 0c56a7cec1 checksums-docs: fix heading in checksum-file 2016-06-29 14:17:57 -07:00
Björn Lindqvist ee80cb0752 ui.backend.gtk: use a global variable to store the icon data
It's easier than the previous code that replaced the get-icon-data word
during deployment. Also GTK support for icon.ico icons.
2016-06-17 16:39:11 +02:00
Björn Lindqvist 6984bae7ca VM: rename of JIT_PUSH_IMMEDIATE to JIT_PUSH_LITERAL
The code template pushes both immediates and references so the name was
wrong.
2016-06-07 14:54:23 +02:00
Björn Lindqvist 91f335b424 style thing: indenting tuple slots 2016-05-31 03:37:23 +02:00
Doug Coleman 21461a1b75 core: selector-for and collector-for are the wrong naming convention--they should be selector-as and collector-as because they take exemplars.
The exemplar is the starting length of the output sequence in collector-as, so add another collector-for-as that takes a seq that we are making a collector for.
2016-05-26 14:36:11 -07:00
Alexander Iljin bdd000c7a2 syntax-docs: fix the code snippet in the ERROR: article 2016-05-25 15:56:05 +03:00
Alexander Iljin 0b3310c326 words-docs: fix wording 2016-05-25 13:23:28 +03:00
Alexander Iljin 06ec320eca words-docs: add "recursive" to the list of word properties
Put "flushable" in quotes for consistency.
2016-05-25 13:23:01 +03:00
Alexander Iljin b8476d7081 io.streams-docs: fix some copy-paste errors 2016-05-25 11:38:28 +03:00
Alexander Iljin 1e0bf40b7f docs: minor fixes and amendments. 2016-05-22 07:53:21 -07:00
Doug Coleman 839a5a22ec effects: make :type print as :type instead of ``_: type`` 2016-05-14 17:03:09 -07:00
Doug Coleman 3fa9ad91f6 effects: Add support for :type as standalone, unnamed types. ( :float -- ) pprints as ( _: float -- ), and ( :( a -- b ) -- ) works, etc. :union{ foo bar } pprints as object but could be improved if the effects parser uses the prettyprinter somehow.
Move ?execute-parsing to parser to avoid circularity.
2016-05-12 16:27:50 -07:00
Alexander Iljin ecd3d76a4e sequences-docs: fix wording 2016-04-30 17:53:48 +03:00
John Benediktsson c68e0f4f3e memory: no need to use memory.private. 2016-04-14 20:06:27 -07:00
John Benediktsson 7387869315 source-files: simplify, remove unnecessary error. 2016-04-14 17:21:05 -07:00
John Benediktsson 0bb297ed92 slots: silly formatting change. 2016-04-14 16:59:33 -07:00
John Benediktsson c350bb1e9c system: can use value-at, don't need to split. 2016-04-14 16:59:08 -07:00
John Benediktsson 950f42eedd parser: make scan-class assert result is a classoid like it used to. 2016-04-13 16:41:48 -07:00
John Benediktsson a7814b9358 classes: unset defining-class in define-class. 2016-04-13 16:41:42 -07:00
John Benediktsson 331483ab98 classes.algebra: removing valid-classoid? (enforced in constructors). 2016-04-13 14:29:24 -07:00
John Benediktsson ed22ef8ee7 classes.maybe: this restriction isn't necessary anymore. 2016-04-13 14:20:00 -07:00
John Benediktsson 1ad06b4e44 effects: swap got expected. 2016-04-13 13:16:59 -07:00
Doug Coleman c2311f2d1d effects: Fix check-stack-effect. Better to report the expected before the got. 2016-04-12 17:06:12 -07:00
Doug Coleman 9ee109ae50 assocs: Add assoc-union-as. Use assoc-reject-like. 2016-04-12 14:18:54 -07:00
Björn Lindqvist 4eadd4cbe0 bootstrap.primitives: assoc-each to register builtins 2016-04-11 01:17:13 +02:00
John Benediktsson 20224d6aaa io.files: fix cd test on windows (needs normalize-path instead of absolute-path). 2016-04-09 10:25:10 -07:00
Doug Coleman 2ada639a62 io.files: Make sure ascii can't write higher than char 127 to file. Allow writes to ascii from { } and B{ } if they don't violate the encoding. 2016-04-07 12:51:30 -07:00
Doug Coleman 2f4f0da10d io.files: Ensure that slices can be written to utf8/utf16/ascii streams. 2016-04-07 12:42:52 -07:00
John Benediktsson 6d417f4f71 io.encodings: a bit faster and make ascii support slices. 2016-04-07 12:32:05 -07:00
John Benediktsson 0988df1e5a io.encodings: allow encode-string to be called with non-strings. 2016-04-07 12:17:00 -07:00
Doug Coleman f0292db7d3 continuations: Moving usages of rethrow below where it's defined. I don't know if these work, but I'm trying to make the hooks throw like the stack effect requests. 2016-04-06 17:55:47 -07:00
Doug Coleman 9427c78506 ui.debugger: quotation stack effect wants ( .. -- * ), throw causes infinite loop, but rethrow works. change previous patch to rethrow everywhere. 2016-04-06 17:35:13 -07:00
Doug Coleman 1f7bf0d6ab splitting: string-lines is optimized for strings. revert my previous slowdown of 50% or so. add a note so this won't happen again. oops. 2016-04-05 21:17:43 -07:00
Doug Coleman aaae4bcf9f splitting-docs: Fix stack effect of string-lines. 2016-04-05 14:50:50 -07:00
Doug Coleman 51b70b2050 core: clean up split-lines with subseq-as. clean up subseq/subseq-as/subseq-unsafe/subseq-unsafe-as. 2016-04-05 12:42:38 -07:00
John Benediktsson 1bc99066a7 strings.parser: allow "\u{snowman}" or "\u{2603}". 2016-04-05 10:19:43 -07:00
John Benediktsson 96336d2f6c sets: make null? use cardinality. 2016-04-04 21:06:21 -07:00
John Benediktsson 68bdd4196b strings.parser: adding error tests. 2016-04-04 15:13:46 -07:00
John Benediktsson 6dd1172a8d strings.parser: fix docs for parse-string. 2016-04-04 15:01:43 -07:00
John Benediktsson 4d83867cb4 strings.parser: remove parse-short-string, everyone should parse-string. 2016-04-04 15:00:04 -07:00
John Benediktsson 42c56a2de1 strings.parser: better string error messages. 2016-04-04 15:00:04 -07:00
John Benediktsson 2269b07d33 use with-temp-file and with-temp-directory in some tests. 2016-04-04 10:33:03 -07:00
John Benediktsson fbfb42c768 vocabs.parser: sift the search-vocabs.
Because non-existing private vocabs are in the search-vocabs list.
2016-03-31 08:36:23 -07:00
Doug Coleman c12b73e929 math: fix docs for binary printing. 2016-03-31 07:46:14 -07:00
Doug Coleman 30d158ccce prettyprint: Print .b .o .h with prefixes so it's not super confusing. Fixes #1351. 2016-03-30 22:59:29 -07:00
Doug Coleman 4d222cc69a syntax: Fix docs for removed article syntax.comments. 2016-03-30 22:55:37 -07:00