Commit Graph

4266 Commits (6939b2ca5f6576b6456b349bbae04d31c6c626ae)

Author SHA1 Message Date
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
Doug Coleman 180a0be647 io.encodings.utf16n: Fix using. 2016-03-30 21:25:44 -07:00
John Benediktsson 77c256412d lexer: make CHAR: ! work. 2016-03-30 21:21:40 -07:00
John Benediktsson 52a3f6f309 lexer: support universal comments. 2016-03-30 21:09:08 -07:00
Doug Coleman c133c16377 core: Trim using lists from -tests and clean up a few irregularities. 2016-03-30 18:43:41 -07:00
Doug Coleman 80d0baaa7d io.files: make tests not use temp-file 2016-03-30 17:31:32 -07:00
Doug Coleman 9e9b7fe367 io.streams.c: use unique-file 2016-03-30 17:31:32 -07:00
Doug Coleman fe7d6ea76e io.pathnames: don't use temp-file 2016-03-30 17:31:32 -07:00
John Benediktsson 24d9e3a491 effects.parser: allow generic methods not in current vocabs. 2016-03-30 17:21:58 -07:00
John Benediktsson 0d1f9f9e01 parser: require an IN: for any word definitions (even generics). 2016-03-30 16:14:16 -07:00
John Benediktsson 267706c4d6 io.encodings: add a test that tell doesn't work anymore. 2016-03-30 15:19:04 -07:00
John Benediktsson 48b3ec47f7 Revert "io.encodings: Add a stream-tell method for decoder streams."
This reverts commit 417b8abbeac013e20b2b360aa215c38604bd18fc.
2016-03-30 15:16:19 -07:00
John Benediktsson 4ce62e0827 math.parser: add tests for change to not throw zero division. 2016-03-30 14:31:37 -07:00
Jon Harper 0b98eb121e math.parser: number>string, don't throw zero division on '1/0' 2016-03-30 14:29:37 -07:00
John Benediktsson dcf8aa16c7 effects.parser: fix some incorrect can't-nest-definition errors.
definitions in one vocabulary can trigger definitions in other vocabularies,
so track them separately instead of using a single boolean.
2016-03-30 13:16:15 -07:00
John Benediktsson 1721f9e314 fix some tests for the sets:set change. 2016-03-29 20:43:46 -07:00
John Benediktsson 71ef8a22c2 disambiguate namespaces:set and sets:set. 2016-03-29 17:14:42 -07:00
John Benediktsson e7a42b1dc4 sets: rename unordered-set back to set. 2016-03-29 15:46:29 -07:00
Björn Lindqvist eca6dfac15 bootstrap.image.primitives: new vocab to make primitive declarations better 2016-03-29 23:52:29 +02:00
John Benediktsson 7dbe6c177e vocabs: words-named should't f suffix. 2016-03-29 13:14:24 -07:00
John Benediktsson 7aa0e16df8 vocabs: support qualified lookups in no-word restarts. 2016-03-29 13:03:59 -07:00
John Benediktsson 3f18b71d07 cleanup some QUALIFIED: that are no longer needed. 2016-03-29 10:20:16 -07:00
John Benediktsson b1be11f39c vocabs.parser: all USE: vocabs are also QUALIFIED:. 2016-03-29 10:20:16 -07:00
John Benediktsson 7d0c596c92 Hopefully fix stack effects of error hooks to throw when required. 2016-03-28 22:27:35 -07:00
Doug Coleman 20aadd5688 core: rename some double paren words. 2016-03-25 03:13:27 -07:00
Doug Coleman 9db94d33d6 io.streams.sequence: make some errors into ERROR:. rename double paren word. 2016-03-25 03:13:27 -07:00
Doug Coleman 92afdc3ad0 hashtables: rename ((tombstone)) to +tombstone+, ((empty)) to +empty+ 2016-03-25 03:13:27 -07:00
Doug Coleman 58efceb408 effects.parser: Remove left-over old code that did (( -- )) stack effects. 2016-03-25 03:13:27 -07:00
Björn Lindqvist 579875821b VM: removes the OBJ-ERROR special object in favor of a constant
The special object contained the string "kernel-error" which were used
to tag VM errors. But it is simplier and removes a little complexity to
just tag them with a fixnum constant.
2016-03-22 17:52:19 +01:00
John Benediktsson 0d2859124e checksums: remove hex-string in favor of math.parser:bytes>hex-string. 2016-03-21 21:06:22 -07:00
John Benediktsson 9cc73c9492 graphs: move to core and simplify.
1. remove add-vertex* and remove-vertex* that contradicted the documentation.
2. graphs use hash-sets of edges instead of hashtables of {edge,edge} pairs.
3. make graphs:closure work like classes:closure, use in classes.
2016-03-21 10:20:38 -07:00
Björn Lindqvist 85c3ccbb98 slots: add initial value for integer-array-capacity, fixes part of #1571 2016-03-21 18:10:39 +01:00
John Benediktsson 4d2baf5d50 kernel: improve docs for ?. 2016-03-20 10:36:23 -07:00
John Benediktsson 6b07e6caf2 math: rename fast-gcd to simple-gcd. 2016-03-19 12:20:09 -07:00
Björn Lindqvist c7ed8a88bb bootstrap.primitives: new predicate integer-array-capacity
It is to be used to declare values for better optimizations.
2016-03-18 20:21:51 +01:00
John Benediktsson baae677276 io.files.unique: change to create unique files and directories relative to the current-directory. 2016-03-18 10:57:54 -07:00
Doug Coleman d4b8e44399 license rename: fix the rest of it. 2016-03-17 02:36:34 -07:00
John Benediktsson 47ae304ff7 parser: fix docs typo. 2016-03-16 12:36:08 -07:00
John Benediktsson 35ca557ce7 core: use $sequence help-markup in a few places. 2016-03-16 10:13:56 -07:00
John Benediktsson 59b41e4f90 math.parser: adding bytes>hex-string and hex-string>bytes. 2016-03-16 10:13:56 -07:00
John Benediktsson 497f8cb514 Update tests for LICENSE.txt rename. 2016-03-16 10:13:56 -07:00
Björn Lindqvist 41d9bda3ce system: these words can't be foldable
Because they will return new values if you update the VM.
2016-03-16 16:18:23 +01:00
John Benediktsson 82d4b1d67e splitting: fix docs for string-lines. 2016-03-13 20:02:09 -07:00
John Benediktsson e8b62d41c3 splitting: fix using. 2016-03-13 17:01:58 -07:00
John Benediktsson ef2ae9c360 splitting: make string-lines more correctly handle line terminator. 2016-03-13 15:46:04 -07:00
Björn Lindqvist db4c4665f3 Docs: doc updates 2016-03-13 07:37:20 +01:00
Björn Lindqvist 6362a4ad5f compiler.units: changes dynamic vars so that they are stack parameters instead 2016-03-09 23:24:42 +01:00
Jon Harper 13c27b69e5 sequences-docs, improve consistency 2016-03-08 13:41:54 -08:00
Jon Harper cb6ddb1735 rename math.statistics:cum-map to sequences:accumulate* 2016-03-08 13:41:54 -08:00
Jon Harper 7eaa24b3e0 math.parser: simplify fix-float (from 16c93c7874) 2016-03-08 07:55:25 -08:00
Jon Harper 19fadb6c96 prettyprinter, locale independant float printing 2016-03-08 07:55:25 -08:00
John Benediktsson b75def3bfb hashtables: remove 2hashtable (not really used). 2016-03-03 14:38:16 -08:00
Doug Coleman b0fe6631c7 core: I messed up the refactoring. with-scope should go away, but so should with-variables with an empty hashtable too. 2016-03-03 11:54:33 -08:00