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
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
a2e8fb9050
Merge remote-tracking branch 'origin/master' into modern-harvey2
2018-02-18 11:29:09 -06:00
John Benediktsson
ca03896d74
more test IN: cleanup.
2018-02-15 09:20:01 -08: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
29708329ab
core: Fix how \words are parsed.
2017-08-31 21:21:15 -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
3aa096e2e5
docs: Update docs.
2017-08-31 21:21:14 -05:00
Doug Coleman
c436f6dbad
factor: char: postpone: color: hexcolor: flexhexcolor: decimal:
2017-08-31 21:21:13 -05: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
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
c133c16377
core: Trim using lists from -tests and clean up a few irregularities.
2016-03-30 18:43:41 -07:00
John Benediktsson
24d9e3a491
effects.parser: allow generic methods not in current vocabs.
2016-03-30 17:21:58 -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
Doug Coleman
58efceb408
effects.parser: Remove left-over old code that did (( -- )) stack effects.
2016-03-25 03:13:27 -07:00
John Benediktsson
ceb75057da
change ERROR: words from throw-foo back to foo.
2015-08-13 16:13:05 -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
3d4bc1de1a
core: rename parse-call( to parse-call-paren
2015-07-27 09:54:08 -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
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
e3cb325040
factor: clean up whitespace in -docs files
2015-07-02 10:31:22 -07:00
John Benediktsson
44c9735799
effects: fix expected and got in bad-stack-effect (were backwards).
2014-06-06 11:16:43 -07:00
Doug Coleman
afcb610960
core: Throw an error when defining MAIN: with a stack effect other than ( -- ). Fixes #1060 .
2014-06-06 10:59:48 -07:00
John Benediktsson
57f9d78892
improve help by linking to types directly.
2014-05-23 20:20:15 -07:00
John Benediktsson
4e04107e4f
effects: M\ word stack-effect does a little less work.
2014-05-21 08:50:17 -07:00
Doug Coleman
ee921150c7
effests.parser: Oops wrong word.
2013-04-14 13:33:48 -07:00
Doug Coleman
bd3762502f
effects.parser: Fix word -> current-word for definition errors.
2013-04-14 13:32:15 -07:00
John Benediktsson
b571a42679
Use -unsafe words with pair methods.
2013-03-07 10:47:23 -08:00
John Benediktsson
5487480126
core: cleanup USING lists.
2013-03-05 10:34:47 -08:00
Doug Coleman
d33dc194ca
core: in-definition -> with-definition.
2012-08-24 16:07:31 -07:00
Doug Coleman
b06b6a8261
core: rename in-word-definition to in-definition
2012-08-24 16:04:49 -07:00
Doug Coleman
84402ccf7e
core: Don't allow nested defintions in :, ::, M:, M::. Fixes #469 .
2012-08-24 15:53:45 -07:00
John Benediktsson
4e72d80256
Using "same?" in more places.
2012-07-21 10:22:44 -07:00
John Benediktsson
8c1165cac1
cleanup some lint warnings.
2012-04-18 17:46:01 -07:00
Doug Coleman
2b87eaa1b5
generalizations: Refactor stack-checker so that smart combinators can be used with curry and compose.
2011-11-27 20:25:22 -08:00
Doug Coleman
82c5388f68
classes: add syntax for intersection{ and union{ anonymous classes. make classoid a mixin.
2011-11-22 18:49:42 -08:00
Doug Coleman
067f9830ef
classes.union: Define a maybe: word that makes a tuple that acts as an anonymous union for a type and f. Updated all the places we define UNION: ?foo foo POSTPONE: f ;. Fixes #416 and lots of headaches.
2011-11-22 01:56:13 -08:00
John Benediktsson
80e1c8e3f2
Eliminate duplicate syntax for stack effects "(" no longer drops and is identical to the old "((", which is now removed.
2011-10-18 13:19:39 -07:00
Doug Coleman
f21fee3b73
Rename complete-effect to scan-effect
2011-10-17 10:25:27 -07:00
Doug Coleman
671f19d70f
Remove all non-core uses of (scan-token)
...
Add scan-datum
Add scan-number
Document more words
Fixes #225 .
2011-10-02 12:00:08 -07:00
John Benediktsson
2a234bec02
effects: removing split-shuffle.
2011-10-02 09:26:40 -07:00
Doug Coleman
76580da5d5
Refactor the lexer/parser to expose friendlier words for scanning tokens. The preferred top-level words now throw an exception on EOF.
...
CREATE -> scan-new
CREATE-CLASS -> scan-new-class
CREATE-WORD -> scan-new-word
CREATE-GENERIC -> scan-new-generic
scan -> (scan-token)
scan-token now throws on eof
(scan-word) returns word/number/f
scan-word now throws on eof
scan-word-name expects a non-number
Fixes #183 .
Fixes #209 .
2011-09-29 11:28:28 -07:00
Keita Haga
2a6e6517a0
effects: add missing right parenthesis in description of stack-effect word
2011-01-23 21:51:52 +09:00
Keita Haga
58c0a3835b
effects: fix typo in docs
2011-01-04 21:30:37 +09:00