John Benediktsson
a63492e9c0
interpolate: make interpolate and interpolate-locals symmetric.
2016-03-29 13:03:59 -07:00
John Benediktsson
ee599e9dea
functors: don't leak the bindings.
2016-03-15 16:12:37 -07:00
John Benediktsson
51bafaeda4
locals.parser: move parse-binding to functors.
2016-03-15 10:34:07 -07:00
John Benediktsson
fc467b72a5
functors: make sure to unuse functor-words, some cleanup.
2015-06-22 15:58:59 -07:00
Björn Lindqvist
976961bfbd
locals.parser: new word with-lambda-scope to handle lexical variables
...
better, fixes #1338
By cloning the relevant parts of the manifest, you ensure that the
quotation with-lambda-scope runs can't "leak" local names in case of
restartable errors.
2015-06-22 11:15:47 +02:00
Doug Coleman
6e60c811ac
core: Rename create to create-word, create-in to create-word-in.
2015-06-08 12:47:35 -07:00
Doug Coleman
5fab749dcc
words: Change word -> last-word, set-word -> set-last-word.
2013-03-23 16:12:03 -07:00
John Benediktsson
559b5bfa5b
using the new H{ } make.
2012-07-19 09:50:09 -07:00
Doug Coleman
f21fee3b73
Rename complete-effect to scan-effect
2011-10-17 10:25:27 -07:00
John Benediktsson
d61de12011
Cleanup more lint warnings.
2011-10-14 12:31:46 -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
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
Slava Pestov
4b76e2a61d
functors: make 'final' declarations work in functors
2010-02-18 03:56:41 +13:00
Slava Pestov
01824d41be
Add support for final tuple classes which cannot be subclassed: TUPLE: foo ... ; final
2010-02-18 02:19:57 +13:00
Slava Pestov
df55fed478
generic: rename method-body predicate class to method
2010-02-03 23:11:24 +13:00
Joe Groff
3fbe722561
Merge branch 'master' of http://factorcode.org/git/factor
...
Conflicts:
basis/locals/locals.factor
basis/peg/peg.factor
extra/infix/infix.factor
2009-10-28 16:17:24 -05:00
Doug Coleman
93de179c2f
over push -> suffix!, over push-all -> append!
2009-10-28 15:29:01 -05:00
Doug Coleman
7ce4b746e5
parsed -> suffix!, add append!
2009-10-28 13:38:27 -05:00
Joe Groff
22afae8734
update functors for [let change
2009-10-28 00:30:09 -05:00
Slava Pestov
6b5e40b2fc
functors: support private words with DEFINES-PRIVATE; use this to make some words generated by math.vectors.simd.functor private
2009-09-04 01:21:59 -05:00
Joe Groff
7276fe44d7
refactor functors so that new functor syntax words can be added outside of functors vocab, and move STRUCT: functor syntax to classes.struct to break a circular dependency
2009-08-29 21:04:19 -05:00
Joe Groff
2e3f75fd87
fix STRUCT: functor when a slot name is the same as a non-lexical word name
2009-08-29 20:19:47 -05:00
Joe Groff
4cc2330a2a
add STRUCT: support to functors
2009-08-29 19:56:42 -05:00
Sam Anklesaria
cc38d1ada6
Merge branch 'master' of git://factorcode.org/git/factor
...
Conflicts:
basis/functors/functors.factor
basis/io/launcher/launcher.factor
basis/ui/gadgets/tables/tables.factor
2009-07-22 10:02:09 -05:00
Slava Pestov
dce020ca71
functors: add MIXIN:, SINGLETON:
2009-07-22 02:06:24 -05:00
Slava Pestov
c171527b8d
Add vectors.functor for generating vector types from arrays; re-implement bit-vectors and specialized-vectors using this. Add DEFERS directive to functors
2009-07-07 14:34:08 -05:00
Sam Anklesaria
a6f65a483b
Merge branch 'master' of git://factorcode.org/git/factor
2009-06-26 15:52:48 -05:00
Slava Pestov
37b01357ec
Remove unused words discovered by Samuel Tardieu
2009-06-16 16:38:39 -05:00
Sam Anklesaria
3b10d4d86e
Merge branch 'master' of git://factorcode.org/git/factor
...
Conflicts:
basis/ui/gadgets/tables/tables.factor
core/vocabs/parser/parser.factor
2009-05-24 18:57:22 -05:00
Sam Anklesaria
27b745dcc8
modulization of ui.frp
2009-05-24 09:36:24 -05:00
Slava Pestov
b31fe9b8f2
Implement stricter vocab search path semantics, with a new API for vocabs.parser. Add map-find-last to sequences vocab
2009-05-14 22:31:29 -05:00
Joe Groff
65b33c145c
GENERIC: support in functors
2009-05-01 16:16:40 -05:00
Joe Groff
a2c7074a6b
Merge branch 'master' of git://factorcode.org/git/factor
2009-04-27 14:02:24 -05:00
Joe Groff
49771779c1
symbols in functors
2009-04-27 14:02:14 -05:00
Slava Pestov
58cba832a0
functors: add support for call-next-method
2009-04-26 21:22:20 -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
ea60f8ae93
Changing : foo ; parsing to SYNTAX: foo ;
2009-03-21 01:27:50 -05:00
Slava Pestov
786475102d
Make more code infer
2009-03-17 02:19:50 -05:00
Slava Pestov
e4a0396550
Add parse-quotation hook to parser which locals overrides. '[ and [ use this hook. Fixes locals bug reported by erg
2009-03-06 19:48:04 -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
4adef7db09
Fix functors bug where changing a hand-written method into one generated by a functor would forget the method; also associate functor-generated methods with the source file they're in.
...
Add DEFINES-CLASS, to parallel DEFINES.
Update math.blas and specialized-arrays/vectors to use DEFINES-CLASS where appropriate
2009-02-06 02:45:21 -06:00
Slava Pestov
4de41f94e9
Fixing wrappers with locals
2009-01-28 17:07:31 -06:00
Slava Pestov
16181f818b
Clean up functors so that the generated code looks sane with 'see'
2009-01-28 15:07:16 -06:00
Slava Pestov
c5160d76e9
Merge qualified, alias, symbols, constants into core
2008-12-17 18:10:01 -06:00
Slava Pestov
3ed7a56a7f
Fix functors for locals changes
2008-12-09 01:42:02 -06:00
Slava Pestov
7940020491
Untangling more dependencies
2008-12-08 16:02:31 -06:00
Joe Groff
f990647d67
Renovate math.blas.vectors to build off of functors and specialized-arrays. Add complex and complex-components sequence wrappers. Fix small bug in functors
2008-12-04 13:40:55 -08:00
Slava Pestov
f683a76a5e
Functor application records location info in generated words
2008-12-02 21:49:51 -06:00
Slava Pestov
25bdb4172a
Functor-generated words can now have stack effect declarations; define byte-array>*-array words
2008-12-02 20:35:20 -06:00