Doug Coleman
8e8b5f59f5
factor: update sorting functor by adding a name type to functors2.
2017-12-02 19:05:25 -06:00
Doug Coleman
3964553ed5
functors: use in compiler.
2017-12-02 18:07:34 -06:00
Doug Coleman
56d437a1e7
alien.destructors: new functors.
2017-12-02 17:21:49 -06:00
Doug Coleman
7616f6e95d
factor: add inlined quotations in stack effects
2017-12-02 16:38:11 -06:00
Doug Coleman
1950722e04
functors2: Fix IN: for same-functor
2017-12-02 10:12:04 -06:00
Doug Coleman
43e0ce4977
functors2: terrible duplication but about to reimplement it in terms of functors.
2017-12-02 08:05:27 -06:00
Doug Coleman
ec05bf7be9
core: Add support for quotations inside stack-effects.
...
Disabled: Preconditions for functors are awkward to implement without creating new syntax. Instead, allow stack effects of the form ( x: [ 1 + ] -- y ) everywhere.
2017-11-25 18:44:37 -06:00
Doug Coleman
384ffc1025
specialized-arrays: Works as a new functor!!
2017-11-24 21:46:16 -06:00
Doug Coleman
f8c54fd2bf
core: Move new functors to core.
...
Also move enough to implement them in an ok style. I would prefer to use formatting in core, but it depends on calendar, etc.
2017-11-24 20:06:44 -06:00
Doug Coleman
bc285f7072
core: Move multiline and interpolate to core.
...
caveats: peg.ebnf needs to find :> and let[ in "syntax" not locals anymore.
- You have to define a word ``IN: syntax`` before Factor picks up syntax changes
- You have to add a syntax word to core/bootstrap/syntax.factor
2017-11-24 19:12:04 -06:00
Doug Coleman
43628c8340
core: Move more things to core.
...
Tricky things:
f props>> == @ _ are not defined in syntax
2017-11-24 18:42:30 -06:00
Doug Coleman
085dbe716f
core: Move hashtables.identity and hashtables.wrapped into core.
2017-11-24 16:46:47 -06:00
Doug Coleman
b19b521b9c
namespaces.extras: Add a new functors prototype.
...
IN: foo
FUNCTOR: foo goes into the vocab where it's declared
Instantiated ``FOO: bar`` go into ``foo:functors:foo:bar:92801082101``
2017-11-22 15:39:46 -06:00
Doug Coleman
bf82be86b1
Merge branch 'master' into modern-harvey
2017-11-11 11:45:46 -06:00
Doug Coleman
0319ff7920
math: rename >fraction to fraction>parts
2017-10-27 20:21:48 -05:00
John Benediktsson
013adec055
source-files.errors: rename <definition-error> to new-source-file-error.
2017-10-25 10:45:46 -07:00
John Benediktsson
37794a326c
sequences: rename setup-each to (each).
...
...to match (each-from), (2each), and (3each), etc.
2017-10-24 17:22:55 -07:00
John Benediktsson
26b7b20622
sequences: fix map-reduce to have ..a on the stack for the first call.
2017-10-23 18:01:15 -07:00
Doug Coleman
815591e10c
factor: m: { a b } -> M\\ a b
2017-10-12 21:22:41 -05:00
Doug Coleman
4b35f2e0d9
factor: fix bootstrap.
2017-10-04 22:39:20 -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
577d4618ca
core: keep nip cleanup.
2017-09-28 22:20:32 -05:00
Doug Coleman
6939b2ca5f
io.errors: Add words to print to error-stream as easily as to
...
output-stream.
2017-09-16 16:50:04 -05:00
Doug Coleman
3c8da3722d
sequences: Add assert-string=.
...
assert-sequence= prints strings as sequences of numbers, which is less
useful for writing unit tests.
2017-09-16 16:45:42 -05:00
Doug Coleman
953ddc566f
factor: Fix test errors.
2017-09-16 08:58:20 -05:00
Doug Coleman
3dc8f5e039
core: Fix using list.
2017-09-16 06:32:01 -05:00
Doug Coleman
6dc30e953e
io.pathnames: Add 3append-path.
2017-09-14 23:11:22 -05:00
Doug Coleman
ff93f58304
Merge branch 'master' into modern-harvey
2017-09-11 17:59:01 -05:00
Alexander Iljin
504c9959a1
Update some copyright headers to follow the current convention
...
Had to look through the history to find years for some headers. Added
authors to some files as well.
2017-09-11 15:43:03 -07:00
Doug Coleman
200b5192ed
factor: commit weekend work.
2017-09-11 16:37:47 -05:00
Doug Coleman
29708329ab
core: Fix how \words are parsed.
2017-08-31 21:21:15 -05:00
Doug Coleman
6ef39d8b6e
factor: Removing /* */ and fixing up using lists.
2017-08-31 21:21:14 -05:00
Doug Coleman
b0858e48b8
core: \foo is literally just foo. To escape it, do ``\ foo`` instead.
...
Fix smalltalk too.
2017-08-31 21:21:14 -05:00
Doug Coleman
fbaa172732
smalltalk: Allow SELECTOR: \foo: and ``M: foo \bar``
2017-08-31 21:21:14 -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
3aa096e2e5
docs: Update docs.
2017-08-31 21:21:14 -05:00
Doug Coleman
22e59d7838
docs: Escaping a lot.
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
88e772ef17
docs: postpone: \foo
2017-08-31 21:21:13 -05:00
Doug Coleman
5a119fa9f7
syntax: Allow postpone: \foo
2017-08-31 21:21:13 -05:00
Doug Coleman
7ca280aee6
factor: SYNTAX: \FOO:
2017-08-31 21:21:13 -05:00
Doug Coleman
a2eb7b854d
core: SYNTAX: should allow \FOO words.
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
eb173e2caa
factor: Add more character escapes.
2017-08-31 21:21:12 -05:00
Doug Coleman
7cf91e005d
strings.parser: Add more escape codes.
2017-08-31 21:21:12 -05:00
Doug Coleman
acfb3a8992
strings.parser: Add character escapes for :[{(.
...
You will need to bootstrap or change them to ``char: :`` then ``char: \:`` in strings.parser.
2017-08-31 21:21:12 -05:00
Alexander Iljin
599a21a8da
sequences-docs: fix the delete-all $errors description
2017-08-27 13:06:09 +03: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
Björn Lindqvist
8675cb2c25
basis/,core/,extra/: more tags
2017-07-08 18:31:39 +02:00