Commit Graph

77 Commits (f2741b34a4b82600f7965cfa0f6eae6d4f4ffe24)

Author SHA1 Message Date
John Benediktsson f2741b34a4 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 2530cf5657 Rename complete-effect to scan-effect 2011-10-17 10:25:27 -07:00
Doug Coleman 94f3ca3b8c 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 684f6b655c effects: removing split-shuffle. 2011-10-02 09:26:40 -07:00
Doug Coleman 300138eb4d 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 e15076b5e8 effects: add missing right parenthesis in description of stack-effect word 2011-01-23 21:51:52 +09:00
Keita Haga a9e74ab4fc effects: fix typo in docs 2011-01-04 21:30:37 +09:00
Slava Pestov e935681743 Add a scan-token word which is like scan, except throws an error on EOF; document scan-object word; mention that scan-token/scan-object are preferred over scan/scan-word 2010-07-06 16:20:08 -04:00
Doug Coleman a2833d31c9 Fix typo in stack effect docs 2010-05-21 12:48:04 -05:00
Joe Groff 36b8b6fd0b fill out row variables docs 2010-03-11 11:57:12 -08:00
Joe Groff d6758793eb another typo in effects syntax 2010-03-11 11:23:48 -08:00
Joe Groff 08c75fac48 typo in <effect> docs 2010-03-11 11:22:28 -08:00
Joe Groff 5bdc6314e0 make effect<= work with univariable stack effects, deny all bivariable stack effects 2010-03-11 01:37:33 -08:00
Joe Groff e55373eda1 effect-variable -> row-variable 2010-03-11 01:25:13 -08:00
Joe Groff d42c2b3a8c carve up effects.parser too 2010-03-11 01:03:40 -08:00
Joe Groff eb7f737ca2 effects: docs for <effect>, <terminated-effect>, <variable-effect> 2010-03-09 13:50:58 -08:00
Joe Groff d969bc22e3 add documentation about stack effect variable syntax and the effect on the stack checker 2010-03-08 17:17:47 -08:00
Joe Groff 8a36d57505 make effect variables part of effect syntax, stored out of band in effect tuple 2010-03-05 13:30:10 -08:00
Slava Pestov daf2e5270c Get foldable and flushable declarations working on typed words 2010-02-24 00:16:55 +13:00
Slava Pestov 1f89dc505a effects.parser: throw a proper no-word error if effect references an unknown class word 2010-02-23 23:57:13 +13:00
Slava Pestov 880fb747fc Removing integers-as-sequences 2010-01-15 07:15:33 +13:00
Slava Pestov 4fe132df8d Minor cosmetic fixes 2009-11-10 21:48:00 -06:00
Doug Coleman ae519868f7 over push -> suffix!, over push-all -> append! 2009-10-28 15:29:01 -05:00
Joe Groff fd21d5cafa bring back ( x: type y: type -- ) stack effect syntax, and automatically hint words based on types in their declared effect 2009-09-01 14:39:22 -05:00
Doug Coleman a663e053d3 temporary fix for core/effects 2009-08-22 20:56:28 -04:00
Doug Coleman d1ce837569 Delete empty unit tests files, remove 1- and 1+, reorder IN: lines in a lot of places, minor refactoring 2009-08-13 19:21:44 -05:00
Doug Coleman dc79446250 use ERROR: in several places instead of throwing strings 2009-08-11 23:09:02 -05:00
Slava Pestov e5cdb7ac2d call( fast-path now supports curry and compose 2009-04-30 21:08:29 -05:00
Slava Pestov c2fe2a4fea Improve stack checker documentation 2009-04-23 03:48:32 -05:00
Slava Pestov 99b8400e56 Documentation updates 2009-04-06 03:00:46 -05:00
Daniel Ehrenberg 9e9116f0ea Better error message for syntax error in : foo ( : bar 2009-03-31 23:18:52 -05:00
Slava Pestov e0d48e3ab6 New utility word: complete-effect 2009-03-22 17:59:40 -05:00
Slava Pestov c0154c1391 Change (:) to parse effect immediately, and remove ( parsing word 2009-03-21 03:17:35 -05:00
Slava Pestov be4fb1e7d9 Move call( and execute( to core 2009-03-16 20:11:36 -05:00
Slava Pestov 1559b74640 Add new check-datastack primitive and re-implement call( with it, instead of using with-datastack. call( is now 5x faster 2009-03-16 06:16:51 -05:00
Slava Pestov ca7a155b72 Merge branch 'master' into new_ui 2009-03-01 20:13:05 -06:00
Slava Pestov 03cb32ad9c Make execute( faster, add execute-unsafe( and make effect tuple slots read only 2009-03-01 20:12:35 -06:00
Slava Pestov 25a877e50b Merge OneEyed's patch 2009-02-28 17:06:55 -06:00
Slava Pestov cd53c2bd37 produce and produce-as: don't need third quotation either 2009-02-28 15:31:34 -06:00
Slava Pestov ce1bc1d6ed Fixing conflicts from stack checker changes 2009-02-24 01:21:10 -06:00
Slava Pestov 421ee726b8 Merge branch 'master' into new_ui 2009-02-16 21:22:12 -06:00
Slava Pestov 6b25e99470 Add summary for heaps more vocabs 2009-02-16 21:05:13 -06:00
Slava Pestov 2f5d4ff512 effects: fix typo 2009-02-09 18:07:40 -06:00
Slava Pestov 3bd22a39f6 effects: fix bug reported by Joe where printing { f } { } <effect> kills the listener; simpler implementation of 'shuffle'; add compiler transform to 'shuffle' if effect is constant 2009-02-09 16:26:56 -06:00
Slava Pestov f1d20719b2 inferred-effect word prop is just a boolean now, not an effect object 2009-02-23 20:51:14 -06:00
Slava Pestov 1951d739a0 Stack effect declarations are mandatory on all words now
define-temp now takes an effect parameter
Fix compiler bug that Dan found
Stricter enforcement of * effects
Move compile-call from compiler.units to compiler
2009-02-23 20:27:05 -06:00
Slava Pestov f34c14a0f5 Remove some usages of tuck 2009-01-23 18:20:47 -06:00
Slava Pestov c5160d76e9 Merge qualified, alias, symbols, constants into core 2008-12-17 18:10:01 -06:00
Doug Coleman 0e14f767ee core: swap 3append -> glue 2008-12-03 19:12:48 -06:00
Slava Pestov 93e9e34175 Add $maybe markup element 2008-11-16 06:02:13 -06:00