Doug Coleman
d635604026
modern: Removing ch'a syntax.
...
It's cool but I don't like it right now.
2019-09-28 10:59:07 -05:00
Doug Coleman
4bcae2590c
factor: Rename all #foo words except # so # can be a sigil.
2018-08-10 13:15:25 -05:00
Doug Coleman
8c3df2ede4
core: Remove some foo'bar words and a lot of postpone:
2018-08-09 21:59:15 -04:00
Doug Coleman
f05c7e8cd8
factor: char: a -> ch'a.
...
Also all contractions are not allowed in word names anymore. Even Data cannot use contractions...
2018-08-09 18:02:38 -04:00
Doug Coleman
343674189c
factor: Let url"" and sbuf"" work without spaces.
...
Also url[[]] if you define a url[[ word.
2018-08-02 10:37:02 -04:00
Doug Coleman
924b434336
Revert "factor: vocab:word -> vocab::word"
...
This reverts commit 354f1cbd34 .
2018-08-02 08:21:52 -04:00
Doug Coleman
7730fc5c64
Merge remote-tracking branch 'origin/master' into modern-harvey2
2018-08-02 07:57:42 -04:00
Doug Coleman
4b614cc15b
factor: Make source files/resources 644 instead of 755.
2018-07-13 20:36:50 -05:00
Doug Coleman
53b1a81049
Merge branch 'master' into modern-harvey2
2018-06-20 00:26:12 -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
64ccdc40a0
Merge remote-tracking branch 'origin/master' into modern-harvey2
2018-03-06 10:57:40 -06:00
Doug Coleman
310a4a247c
alien.libraries: load-library is misnamed, refactor library-dll.
...
load-library implies that dlopen() is called, which is totally not the
case. add-library calls dlopen() and load-library just looks the opened
library up in the ``libraries`` global. What load-library did is now
library-dll.
If we want to do it right, add-library should be a declarative top-level
form that tries to call a real load-library on demand instead of
memoizing the first try which would fix the case where the library is
not found, is moved into position by the user and Factor declines to
look it up again.
2018-02-19 10:38:21 -06:00
Doug Coleman
354f1cbd34
factor: vocab:word -> vocab::word
2017-12-29 00:43:25 -08:00
Doug Coleman
815591e10c
factor: m: { a b } -> M\\ a b
2017-10-12 21:22:41 -05:00
Doug Coleman
cada003d7f
factor: Rename ``M\ array generic`` to ``m: { array generic }``.
...
The problem with M\ is that it has an arity of 1 where we need it to have arity 2. Also, for multimethods, the \ disables parsing of the array that follows, e.g. ``M\ { string string } multimethod-name`` parses as ``M\ {`` and leaves the rest unparsed. This is obviously wrong.
An alternative syntax that should be implement and looks ok is ``m{ array generic }``
2017-10-01 09:51:31 -05:00
Doug Coleman
baa6af4831
factor: All RENAME: and FROM: and EXCLUDE: to have \foo as word names.
...
Grab bag of other cleanups. tests and docs parse!
2017-08-31 21:21:14 -05:00
Doug Coleman
dccba5f9c3
compiler: d: and r: had too many spaces.
2017-08-31 21:21:14 -05:00
Doug Coleman
2114b7efc5
factor: ALIEN: to alien:
2017-08-31 21:21:13 -05:00
Doug Coleman
5507c2b676
factor: [let to let[, [| to |[
2017-08-31 21:21:13 -05:00
Doug Coleman
fbb5f871c4
compiler: r: d:
2017-08-31 21:21:13 -05:00
Doug Coleman
c436f6dbad
factor: char: postpone: color: hexcolor: flexhexcolor: decimal:
2017-08-31 21:21:13 -05:00
Doug Coleman
15b13870ae
peg.ebnf: Clean up EBNF: syntax.
...
The syntax for an EBNF parser is now ``EBNF: identifier string``. The
inline syntax went from [EBNF ... EBNF] to EBNF[[ ]], EBNF[=[ ]=], etc.
<EBNF looked for a main word, but this functionality is just EBNF[[ ]]
now.
2017-08-05 22:23:57 -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
Doug Coleman
7c7bb93c55
factor: Rename GENERIC# to GENERIC#:.
...
Fixes #1670 .
2017-06-01 13:58:58 -05:00
John Benediktsson
3a6eefcc8e
using ignore-errors instead of [ drop ] recover.
2017-02-09 15:50:33 -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
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
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
9eab4b5652
VM: make visit_instruction_operands() skip over uninitialized blocks
...
It will crash otherwise when compacting the code heap.
2016-09-29 06:35:35 +02:00
Björn Lindqvist
a36c0cb5ac
compiler.*: moving all words only relevant for testing to compiler.test
2016-08-12 15:13:51 +02: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
00d15b66a6
compiler.tests.alien: tests for varargs calls
2016-08-02 23:36:02 +02:00
John Benediktsson
4bfcc86cc4
compiler.tests.stack-trace: use with-test-file.
2016-04-04 15:00:04 -07:00
Doug Coleman
46f781a56f
compiler.tests.stack-trace: remove temp-file usage.
2016-03-31 07:37:50 -07:00
John Benediktsson
6e035c3640
compiler.tests: fix a few KERNEL-ERROR.
2016-03-22 15:22:15 -07:00
Björn Lindqvist
24db8a5d7f
compiler.tests.callstack-overflow: disable test for os x 64, see #1478
2015-12-08 02:16:51 +01:00
Björn Lindqvist
bc7f9ee669
VM: always use undecorated names when loading ffi functions
...
For win32, Factor tries four different function names when loading
stdcall and fastcall functions, in case decorated names are used in the
dll. It seems to not be necessary because a dll meant for 3rd party use
will always export undecorated
names (http://blogs.msdn.com/b/oldnewthing/archive/2004/01/12/57833.aspx ).
2015-09-02 21:54:41 +02: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
John Benediktsson
0216f9f6d1
namespaces: rename namestack* to (get-namestack) for consistency.
2015-08-13 17:53:07 -07:00
John Benediktsson
ceb75057da
change ERROR: words from throw-foo back to foo.
2015-08-13 16:13:05 -07:00
Doug Coleman
ce046b77c8
compiler: rename D to D: because it wants a token. Same for R -> R:
2015-08-13 15:23:10 -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
b6be8685c3
basis: ERROR: changes.
2015-08-13 03:20:39 -07:00
Doug Coleman
e3ddd337e0
compiler, alien: fix some duplication in ERROR: definitions. hope this doesnt trigger more failing builds than it fixed...
2015-08-12 13:58:38 -05:00
Doug Coleman
46587f8457
factor: arch -> arch-name. fix breakage caused by other patch.
2015-08-12 11:08:24 -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
John Benediktsson
136d793c6e
compiler.tests: remove some tests that can't work now.
...
check-combination-effect raises an error at parse-time.
2015-08-05 18:01:16 -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
bcc78ab220
basis: whitespace.
2015-07-20 17:13:52 -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