Commit Graph

255 Commits (master)

Author SHA1 Message Date
John Benediktsson 05665e8d13 kernel: adding while* that passes the predicate result to the body. 2019-12-13 14:35:51 -08:00
John Benediktsson 2692227fbc kernel: fix stack effect for -rotd. 2019-07-23 16:23:27 -07:00
Doug Coleman 93b5e59f72 kernel: Only test that it fails 10 times for TravisCI to pass. 2018-07-07 03:15:09 -05:00
Doug Coleman 54d36ec03f kernel: Test if one ``-1 f <array>`` hangs travisci.
Related to #2013.
2018-07-07 02:44:32 -05:00
Doug Coleman 4e9d383fe5 docs: Fix help-lint-all mistakes. 2018-07-07 01:13:19 -05:00
Doug Coleman 9f213f96f6 core: Add the shuffler words but without primitives.
The nipd branch slowed bootstrap by a minute, this patch does not.

sorry about changing the fjsc line endings...
2018-06-19 22:52:58 -05:00
Doug Coleman aa87e69d25 Revert "VM: removing the unused callstack-bounds primitive"
This reverts commit c55a6ef873.

This primitive is useful for fixing the macOS pthread bug and the javascriptcore library.
2018-06-03 22:12:28 -05:00
John Benediktsson a92d67fcb2 fix more typos in docs. 2018-02-12 16:43:08 -08:00
Doug Coleman 2920d2ee71 factor: Rename [curry] -> currier, remove some [foo] words.
The [foo] convention is not descriptive and looks like special syntax.
2017-08-06 00:20:35 -05:00
Doug Coleman acffb259f7 kernel: Fix the docs for curry/compose a bit. 2017-06-03 02:10:06 -05:00
Doug Coleman e189954ecc core: Rename iota to <iota> so we can have TUPLE: iota ... ; instead of TUPLE: iota-tuple ... ; 2017-06-02 11:57:05 -05: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 b31c0b8857 Docs: bunch of random doc updates 2016-10-31 11:46:39 +01: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 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
Doug Coleman c133c16377 core: Trim using lists from -tests and clean up a few irregularities. 2016-03-30 18:43:41 -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 4d2baf5d50 kernel: improve docs for ?. 2016-03-20 10:36:23 -07: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 74cb1acd17 Docs: more docs for vocabs in core/ 2015-12-05 16:34:46 +01: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 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 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
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 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 ceb75057da change ERROR: words from throw-foo back to foo. 2015-08-13 16:13:05 -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 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
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 5e29aac0a6 Docs: various more compiler-related docs 2015-07-28 17:58:28 -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
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 d47f9447c3 kernel-docs: Fix link from class to class-of. 2015-06-30 21:43:56 -07:00
Doug Coleman 44e8e7b344 primitives: Change PRIMITIVE: to check that the word is in that vocabulary and the stack effect is correct.
Use PRIMITIVE: in core/ and basis/
2015-06-25 18:02:03 -07:00
Björn Lindqvist 11e906139b VM: code_block::scan, make it so the method always returns -1 if scan can't be determined, part of the fix for #1265 2015-01-15 09:29:13 +00:00
Björn Lindqvist 990af22dc6 VM: renamed version and git-label to vm-version and vm-git-label. 2014-11-10 23:02:13 -08:00
Björn Lindqvist 090f4fddd5 VM: Three new special objects added to keep track of the builds version number, git label and compilation time respectively. The info is exposed in the system:version-info word and also shown in the banner during startup.
Conflicts:
	Nmakefile
	basis/ui/tools/listener/listener.factor
	core/alien/strings/strings.factor
2014-11-10 23:01:52 -08:00
Björn Lindqvist 4a96e6163b VM: new primitive (callback-room) for querying the VM about memory usage
The word works exactly like (code-room) except it looks at the memory
usage in the callback heap instead of the code heap.
2014-09-29 07:30:21 -07:00
Björn Lindqvist 4867e7bc96 VM: try and recover with a kernel error from the callback heap running out 2014-09-29 07:30:20 -07:00
John Benediktsson 917ce9f773 kernel: fix help-lint warning for 2with. 2014-07-22 07:47:28 -07:00
Björn Lindqvist 60ffe0680e kernel: new combinator 2with = with with 2014-07-22 07:40:13 -07:00
John Benediktsson 0c3580844d kernel: remove ?execute, not used much, and a little bit confusing. 2014-06-07 09:56:47 -07:00
Björn Lindqvist 906f796094 kernel.private: add ERROR-OUT-OF-FIXNUM-RANGE on the Factor side 2014-06-07 14:36:53 +02:00