Commit Graph

4318 Commits (c041cc69f0390a668432e4b41dfa6929f855f92a)

Author SHA1 Message Date
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 . 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 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
Doug Coleman 9c4ed3ddae core: Don't use with-scope. H{ } clone [ ] with-variables is the same thing and is more explicit. 2016-03-02 17:18:42 -08:00
Doug Coleman 3c48141689 hashtables: add a 2hashtable word that is like associate but for two key/value pairs. 2016-03-02 17:17:58 -08:00
John Benediktsson 90ac4ab9f6 checksums: speedup add-checksum-bytes by using the slice. 2015-12-30 09:40:58 -08:00
John Benediktsson 3affad7681 docs: using $maybe. 2015-12-11 17:05:45 -08:00
Björn Lindqvist 339b1b6466 VM: put the singletons t, -1, 0 and 1 in the special objects table
Having them there instead of as fields in the vm struct removes a bunch
of special handling. This commit just adds them and doesn't remove the
old ones to avoid potential chicken-and-egg bootstrap problems.
2015-12-09 21:31:13 +01:00
Björn Lindqvist 9d95602591 io.encodings: doc fix 2015-12-08 04:21:32 +01:00
Björn Lindqvist 74cb1acd17 Docs: more docs for vocabs in core/ 2015-12-05 16:34:46 +01:00
John Benediktsson 986bf1b2f9 Revert "Auto load urls.secure when needed"
This reverts commit bb7740091e.
2015-11-04 07:45:46 -08:00
Sankaranarayanan Viswanathan bb7740091e Auto load urls.secure when needed 2015-10-29 21:28:22 -07:00
John Benediktsson 2fc178e518 arrays: don't need to use slots.private. 2015-10-29 09:05:12 -07:00
Björn Lindqvist 05b6d2d19b arrays: can use the length>> accessor instead 2015-10-29 06:36:38 +01:00
Björn Lindqvist 1ee0823e52 arrays: make it so pair? doesn't call length, fixes 2015-10-29 00:48:18 +01:00
Björn Lindqvist 81ad3e21cb tuple-arrays: initial-values can be reused here to create the tuple
array sequence
2015-10-10 23:58:04 +02:00
John Benediktsson 9c0d5cf34d memory: disable a test to get a clean win32 build. 2015-10-10 09:56:15 -07:00
John Benediktsson 141f3c9e65 math: use "i/f" for stack effect. 2015-09-30 19:01:38 -07:00
Björn Lindqvist 85784c5265 VM: make save-image throw exception on error () 2015-09-30 23:31:47 +02:00
Björn Lindqvist ffc441ad63 VM: looks like ERROR_C_STRING is never thrown, so it can be removed 2015-09-29 23:12:56 +02:00
John Benediktsson adbd379241 classes.tuple: fix stack effect, didn't mean to commit change. 2015-09-24 09:38:16 -07:00
John Benediktsson 7583ffc2c9 classes.tuple: use class-of in tuple>array. 2015-09-24 07:58:02 -07:00
Björn Lindqvist 804348287c Docs: fix a bunch of help-lint warnings 2015-09-22 08:52:59 +02:00
Björn Lindqvist db0739ff36 sequences: extra doc and test for 2all? 2015-09-22 08:52:59 +02:00
John Benediktsson eaa65bc66f lexer: change shebang handling to be in skip-blank.
It previously required "#!" to be defined like "!", now it doesn't.
2015-09-10 17:53:04 -07:00
John Benediktsson 59caf874a3 syntax: removing #! as a comment character.
We don't need two types of comments and shebang (#!) is handled
natively by the lexer, so the original reason for #! is not valid.
2015-09-09 18:28:08 -07:00
John Benediktsson 5fdc98cb97 syntax: fix bad search-and-replace. 2015-09-08 16:21:06 -07:00
John Benediktsson e477f6996f Fix comments to be ! not #!. 2015-09-08 16:15:10 -07:00
Björn Lindqvist de4917e6a1 VM: give the exception handling special object a real name 2015-09-02 21:54:33 +02:00
Björn Lindqvist cee0b19324 VM: the ffi-signal-handler and ffi-leaf-signal-handler primitives are unused 2015-09-02 21:54:15 +02:00
Björn Lindqvist 10464e7e4e VM: LEAF_FRAME_SIZE is 16 bytes on all platforms so we can simplify it 2015-08-26 20:23:15 +02:00
Björn Lindqvist a2e8af2581 io.files: command line params is in the system's native encoding 2015-08-24 07:23:40 -07:00
Doug Coleman 0a5c181c9e words: cleaning up word-props 2015-08-23 22:40:56 -07:00
Doug Coleman de4e42b6ca classes.parser: add a create-class word. 2015-08-23 22:40:56 -07:00
Björn Lindqvist 59b7a50567 VM: removing the get_datastack/retainstack/callstack primitives
they can all be implemented using the
datastack/retainstack/callstack-for primitives and the less primitives
the better!
2015-08-23 18:36:30 -07:00
John Benediktsson ac5da311f7 more cleanup. 2015-08-17 20:48:48 -07:00
John Benediktsson 399d01f56e strings.parser: finish removing triple-strings.
parse-string => parse-short-string (on the same line)
parse-multiline-string-until => parse-full-string
2015-08-17 19:49:12 -07:00
John Benediktsson 9dcca84c27 classes.tuple: a better error if creating a tuple from too many values. 2015-08-15 19:39:39 -07:00
John Benediktsson a56a00689f namespaces: don't need SLOT: and FROM:. 2015-08-15 16:31:21 -07:00
John Benediktsson 7d4964c136 alien.strings: remove (symbol>string) helper word. 2015-08-15 16:13:46 -07:00
John Benediktsson 18e557785f Revert "parser: split parse-file into (parse-file)."
This reverts commit 18bbe6292a.
2015-08-15 16:05:41 -07:00
John Benediktsson 18bbe6292a parser: split parse-file into (parse-file). 2015-08-15 09:12:06 -07:00
Björn Lindqvist 883f65d0e4 VM: fix one callstack overflow problem by "unlocking" the callstacks
border pages

Also a new vocab compiler.tests.callstack-overflow which is supposed to
contain all tests for callstack overflow-related problems.
2015-08-14 20:19:58 -07:00
Björn Lindqvist 9413f711b9 VM: the JIT_PROFILING special object is never used, so rename it to
JIT_UNUSED (removing it breaks boot images)
2015-08-14 20:19:53 -07:00
Björn Lindqvist 8c70f04d41 bootstrap.image: bs-special-objects -> special-objects,
bootstrap.image.syntax vocab not needed anymore
2015-08-14 20:19:53 -07:00
Björn Lindqvist 9cf36e3dc2 bootstrap.image: attempt to remove the SPECIAL-OBJECT: table
Instead of using newly defined words as keys to the special-objects
hash being built, you can reuse the constants in kernel.private
2015-08-14 20:19:52 -07:00
Björn Lindqvist 81057c4108 VM: the context_object_count must be wrong, there are only 4 of them 2015-08-14 20:19:50 -07:00
John Benediktsson cc80c37bbb namespaces: simplify (box-at) using cache. 2015-08-14 19:51:52 -07:00
John Benediktsson 2c41c913ee parser: split out check-word-name. 2015-08-14 19:51:52 -07:00
John Benediktsson 0216f9f6d1 namespaces: rename namestack* to (get-namestack) for consistency. 2015-08-13 17:53:07 -07:00
John Benediktsson bee46baecb continuations: rename catchstack* to (get-catchstack) for consistency. 2015-08-13 17:52:40 -07:00
John Benediktsson f88febc03e namespaces: remove is-global word. 2015-08-13 17:46:40 -07:00
John Benediktsson ceb75057da change ERROR: words from throw-foo back to foo. 2015-08-13 16:13:05 -07:00
Doug Coleman b2364198a2 words: use get-callstack. 2015-08-13 12:57:33 -07:00
Doug Coleman c21a154056 core: callstack is a builtin type and a class name. rename the *stack words that grab the current stack get-foostack to avoid the callstack builtin conflict and for better symmetry with set-foostack. 2015-08-13 10:11:59 -07:00
Doug Coleman b1606f3d0a classes.error: It was in the other patch but not this one... 2015-08-12 19:40:25 -07:00
Doug Coleman 02008979d9 factor: Change ERROR: foo ; to define ``throw-foo`` instead of having ``foo`` throw implicitly. The old ``foo`` still throws implicitly because this is a big change to get right in one patch, but it should be removed soon. 2015-08-12 15:26:18 -05:00
Doug Coleman 948b1a650a syntax: fix SINGLETON: to be on its own line in docs. 2015-08-12 12:10:32 -05:00
Doug Coleman e0d1b14e5c factor: don't need FROM: namespaces => set or namespaces:set anymore 2015-08-12 11:25:57 -05:00
Doug Coleman 28dcd0667a factor: rename set to unordered-set. 2015-08-12 10:54:19 -05:00
Doug Coleman 330c7ba156 factor: Removing SLOT: nth/at/global in favor of using change: at for tuple slots named ``at`` and change-at for hashtables.
Redo many FROM: and QUALIFIED: and using lists.
2015-08-12 08:49:02 -05:00
Doug Coleman 5dadf77311 assocs: fix map>alist and docs. 2015-08-12 08:48:33 -05:00
Doug Coleman 114ba4733a assocs: add map>alist which is { } map>assoc but could map to an alist type sometime. 2015-08-11 23:43:58 -05:00
Doug Coleman 00338f62f3 factor: put inline on same line as ; for experimentation 2015-08-10 12:55:27 -05:00
Doug Coleman 434f08a303 assocs: Add harvest-keys, harvest-values to core/. Remove assoc-sift because it's sift-keys, sift-values in core/. 2015-08-08 12:16:48 -05:00
Doug Coleman 43fb73fae6 factor: Rename I[ ]I to [I I]. Fix places where we do "string"token without whitespace. 2015-08-06 17:05:12 -05:00
John Benediktsson 6e397d5244 generic.standard: add some tests. 2015-08-05 19:13:53 -07:00
John Benediktsson 9aab1c87b4 generic.standard: check GENERIC# for integer dispatch#. 2015-08-05 19:10:58 -07:00
John Benediktsson 46021e4d77 fix some generic tests. 2015-08-05 18:01:05 -07:00
John Benediktsson 4fbbe6b201 generic: check valid combination/effect. 2015-08-05 15:13:23 -07:00
Doug Coleman aa8a5ac153 system: Don't assume the git version is set. 2015-08-05 09:34:31 -07:00
Doug Coleman e9dbb7cf22 system: Make a shorter banner on startup. 2015-08-04 16:57:19 -07:00
Doug Coleman 20fda0e371 io.files: fix docs 2015-08-04 15:07:01 -07:00
Doug Coleman 73d45cf6db io.files: Add change-file-lines and change-file-contents words. 2015-08-04 15:03:37 -07:00
Björn Lindqvist 4b8b617ea4 kernel.tests: address of fault is now in the 3rd element, so these tests
need to be updated
2015-08-04 16:02:10 +02:00
Björn Lindqvist 6fedb79c73 VM: bump stack_reserved from 1kb to 4kb
The added test case fails with a doulbe fault, which appears to be
caused by a stack overflow in the code that tries to handle the stack
overflow. So bumping it to 4096 bytes should give the code enough stack
space to play with.
2015-08-04 16:02:10 +02:00
Doug Coleman 4f4772e2db syntax docs: Fix octal example. 2015-08-01 14:29:12 -07:00
John Benediktsson 7b0733f72f syntax: fix example in syntax-floats. 2015-08-01 07:59:21 -07:00
John Benediktsson a8b3642c8c math.parser: make float-parse:point a fixnum. 2015-07-30 18:16:31 -07:00
John Benediktsson b3323c15bd math.parser: some inline, some fixnum+fast, some disable tests. 2015-07-30 17:59:21 -07:00
Jon Harper 8d827b2772 math.parser: support >bin and >oct for floats
This is for symmetry with "0o1p0", "0b1p0", bin> and hex> which
all already work
2015-07-30 11:04:51 -07:00
Jon Harper 4d8cb81cab math.parser: add tests/docs for floats 0b 0x bin> float> since they work 2015-07-30 11:04:51 -07:00
Jon Harper 102eb0064f docs: hex floats exponents became mandatory 2015-07-30 11:04:51 -07:00
Jon Harper 09af182db7 math.parser, don't take infinite time to parse huge exponents 2015-07-30 11:04:51 -07:00
Jon Harper dce2ca1366 math.parser: don't lose precision in make-float-bin-exponent 2015-07-30 11:04:51 -07:00
John Benediktsson c6fad4aa61 math.ratios: moving to core. 2015-07-30 10:31:00 -07:00
Björn Lindqvist 5e29aac0a6 Docs: various more compiler-related docs 2015-07-28 17:58:28 -07:00
Doug Coleman 3d4bc1de1a core: rename parse-call( to parse-call-paren 2015-07-27 09:54:08 -07:00
Jon Harper 53efceb0ad math.integers, comment and simplify bignum/f
change the "while" that could only execute once to "when"
change the f/loop word name to "mantissa-and-guard" since it's what it
computes
change the check against 2^53 to be explicit
2015-07-26 12:33:56 -07:00
Jon Harper 5424ad5586 math.integers, bignum/f, improve performance.
This changes avoids looping many times if the denominator is a power of
2. After this change, the implementation matches the linked sbcl
algorithm.  This was probably a mistake done when porting the algorithm.
Basically, as an optimization, all trailing zeros are removed from the
base2 representation of the denominator to have smaller bignums to
divide. But the previous factor implementation didn't take this into
account when making the initial guess of the shift of the numerator to
obtain a result in the range [2^54-1,2^53]. The loop would then correct
the initial guess by a factor of 2 at each iteration, so it would run as
many iteration as the denominator base2 power reduction, instead of only
a few times. For pathological cases, the speed up is huge (10^4):
1 1000 2^ bignum/f
2015-07-26 12:33:55 -07:00
Jon Harper cc6d90a096 math.integers, fix bignum/f for results in ]0x1.0p-1022,0x0.4p-1022] 2015-07-26 12:33:55 -07:00
Doug Coleman 1fcf96cada factor: remove """ string syntax for now. there are HEREDOC:, STRING:, escaping \", and something else soon. 2015-07-25 22:59:56 -07:00
Doug Coleman 117727d444 parser, source-files: you need to bootstrap after this patch.
cleans up some file vs path naming.

file -> current-source-file
file -> current-test-file somewhere else
source-file -> path>source-file
source-file-tuple -> source-file
2015-07-23 22:03:43 -07:00
John Benediktsson 5eec781b40 use ``if*`` instead of ``dup [ ] [ drop ] if``. 2015-07-20 22:24:30 -07:00
John Benediktsson bbde85f56b vocabs.loader: fix tests. 2015-07-20 21:11:16 -07:00
John Benediktsson 7327b8bdd4 vocabs.loader: make require-all throw restarts.
We only want to catch the restarts in mason, so make a special
load-no-restarts that will catch the failures and print them out
the same way it worked before.
2015-07-20 17:35:22 -07:00
John Benediktsson b82d866340 sequences: bring back check-length. 2015-07-20 09:58:12 -07:00
John Benediktsson 3ea9f09f6a fix some sets:members. 2015-07-20 09:32:31 -07:00
Doug Coleman 2f6548d6d2 factor: fix breakage with word renamings. 2015-07-20 05:51:16 -07:00
Doug Coleman eca8b7e49c core: fix docs 2015-07-20 01:01:31 -07:00
Doug Coleman e4c39bcf3c factor: superclass -> superclass-of, superclasses -> superclasses-of 2015-07-20 00:46:33 -07:00
Doug Coleman 2adeed9cb3 factor: rename classes:members to class-members so it doesn't conflict with sets:members. ugh. 2015-07-20 00:32:42 -07:00
Doug Coleman fbbd09f3c5 factor: system:image -> image-path, like vm-path. image is all over the place png, jpg etc 2015-07-20 00:17:09 -07:00
Doug Coleman 618330b31e factor: rename system:vm -> vm-path to differentiate it from vm:vm (which is a STRUCT:) 2015-07-20 00:10:29 -07:00
John Benediktsson 296974a057 math.parser: remove digits>integer. 2015-07-19 19:18:47 -07:00
John Benediktsson 16c93c7874 math.parser: simplify fix-float. 2015-07-19 17:20:37 -07:00
John Benediktsson 0dbc5e7d67 math.parser: simplify { integer ratio } >base. 2015-07-19 16:57:45 -07:00
John Benediktsson 89e3cc511e math: moving >fraction to math. 2015-07-19 16:57:45 -07:00
Doug Coleman 5f8426cfbe factor: rename files that are not loadable on mac, too 2015-07-19 16:55:36 -07:00
John Benediktsson 4cda3fe7c4 math.parser: re-use number-parse and float-parse objects. 2015-07-19 09:58:17 -07:00
Doug Coleman a66cf55e8e hashtables: Don't test word's hashcode as a bignum after all. It's not allowed. 2015-07-18 09:17:34 -07:00
Doug Coleman 6415684f8d word hashcodes: Don't unsafely set the hashcode for a word to be a bignum. Revert foldable, type declaration for word hashcode*. 2015-07-18 08:55:38 -07:00
Doug Coleman bc0c02acdf core: declare word's hashcode an integer. Make word not flushable since it's mutable. Add a test case for .
Fixes . @bjourne found this.
2015-07-18 00:27:12 -07:00
John Benediktsson fb688cc08b sequences: integer length for repetition, use English. 2015-07-17 17:42:41 -07:00
John Benediktsson 17386d0608 Revert "sequences: simplify find-from and find-last-from."
This reverts commit 903b8eec0b.
2015-07-17 16:41:56 -07:00
Doug Coleman d2ab2e6dd1 math.parser.tests: Fix whitespace. 2015-07-17 15:19:39 -07:00
John Benediktsson 743928ae7d sequences: use check-length to force integer partial dispatch in iteration. 2015-07-17 13:59:33 -07:00
John Benediktsson 9c4b3e7e43 sequences: define a 2each-from, use each-from more. 2015-07-17 13:40:01 -07:00
John Benediktsson 903b8eec0b sequences: simplify find-from and find-last-from. 2015-07-17 13:26:43 -07:00
John Benediktsson 573ac9c9e9 splitting: use unsafe in split-when, simplify split-indices. 2015-07-17 12:14:33 -07:00
John Benediktsson 9fad4187f3 sequences: adding a subseq-unsafe that doesn't check slice bounds. 2015-07-17 12:14:33 -07:00
John Benediktsson 8e8b15c515 sequences: fix help-lint. 2015-07-16 17:18:14 -07:00
John Benediktsson 94cddbe927 sequences: integer slots in slice, don't store reason in slice-error. 2015-07-16 15:35:03 -07:00
John Benediktsson c7868226d0 math.parser: simplify using member-eq?. 2015-07-16 09:55:33 -07:00
John Benediktsson 6cded6437f combinators: fix linear-case-quot to order the comparisons properly.
I noticed that member? optimized comparisons in the wrong order, this
was because it calls into linear-case-quot.  The reason case was working
find is because it reversed before calling linear-case-quot.  The fix
was to move the reverse into linear-case-quot.
2015-07-16 09:55:19 -07:00
John Benediktsson 33a62c7f9d math.parser: with-radix-char quot shouldn't get called with ``f``. 2015-07-16 08:51:58 -07:00
John Benediktsson e280bafabe math.parser: remove unnecessary with-no-radix, thanks @jonenst! 2015-07-16 07:35:51 -07:00
John Benediktsson 8a3c5c2634 Fix some tests broken by optimized? rename. 2015-07-15 11:47:03 -07:00
John Benediktsson 4c2c8f133f vm: rename some primitives, and some cleanup.
* quot-compiled? => quotation-compiled?
* optimized? => word-optimized?
2015-07-15 11:13:52 -07:00
John Benediktsson f6f596f40f math.parser: okay time for sleep, maybe this works, sorry git history. 2015-07-14 22:48:08 -07:00
John Benediktsson 86639b9df0 io.encodings.ascii: make sure encode-string gets a string. 2015-07-14 22:18:12 -07:00
John Benediktsson 5b58e1d3e8 math.parser: fix a regression. 2015-07-14 22:05:25 -07:00
John Benediktsson d6d69952e5 hashtables: fix docs differently. 2015-07-14 21:51:02 -07:00
John Benediktsson 41629dce2f Fix some things broken by hashtable capacity changes. 2015-07-14 21:45:39 -07:00
John Benediktsson 94bb834eae math.parser: fix ``"-.5" dec>``. 2015-07-14 20:16:34 -07:00
John Benediktsson 866b40271d math.parser: fix "most-negative-fixnum number>string string>number fixnum?". 2015-07-14 20:03:33 -07:00
John Benediktsson 1a48f1d229 hash-sets: make sure capacity and growth use same load factor. 2015-07-14 18:35:14 -07:00
John Benediktsson 6127bb8548 hashtables: make sure capacity and growth use same load factor. 2015-07-14 18:32:40 -07:00
John Benediktsson 3265f33b6b vocabs: fix help lint error. 2015-07-14 18:17:28 -07:00
John Benediktsson 94ed98e78c Use $sequence in a few places. 2015-07-14 15:57:18 -07:00
Björn Lindqvist b9b75c272b VM: let's merge (save-image) and (save-image-and-exit) into one 3
arg (save-image). it's good not to have to many similar primitives
2015-07-12 22:36:59 +02:00
John Benediktsson 4bdeaad112 init: cleaner using "initialize" instead of "global [ ... ] cache". 2015-07-09 19:06:19 -07:00
John Benediktsson e1e8383322 hash-sets: need to define M\ hash-set hashcode*. 2015-07-09 08:35:43 -07:00
Doug Coleman 43d6f1d3e2 factor: Retrying on the unit tests. Also normalize some syntax with FUNCTION:. 2015-07-02 17:28:17 -07:00
Doug Coleman 59f3b1ea57 Revert "factor: rename [ ] [ ] unit-test -> { } [ ] unit-test using a refactoring tool!"
Needs a bit more work.

This reverts commit 7e54cc2824.
2015-07-02 13:47:06 -07:00
Doug Coleman 7e54cc2824 factor: rename [ ] [ ] unit-test -> { } [ ] unit-test using a refactoring tool! 2015-07-02 11:36:08 -07:00
Doug Coleman 999aa7c897 factor: clean up spaces in -tests files 2015-07-02 10:34:01 -07:00
Doug Coleman e3cb325040 factor: clean up whitespace in -docs files 2015-07-02 10:31:22 -07:00
Doug Coleman d47f9447c3 kernel-docs: Fix link from class to class-of. 2015-06-30 21:43:56 -07:00
Doug Coleman 00059f9ec5 classes.tuple: Add a note about "defining-class" 2015-06-30 21:20:20 -07:00
Doug Coleman 0e0646c752 syntax-docs: Revert documentation for IN: foo.private 2015-06-30 21:20:20 -07:00