]> gitweb.factorcode.org Git - factor.git/blob - basis/locals/locals.factor
Merge branch 'master' of http://factorcode.org/git/factor
[factor.git] / basis / locals / locals.factor
1 ! Copyright (C) 2007, 2009 Slava Pestov, Eduardo Cavazos.
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: lexer macros memoize parser sequences vocabs
4 vocabs.loader words kernel namespaces locals.parser locals.types
5 locals.errors ;
6 IN: locals
7
8 SYNTAX: :>
9     scan locals get [ :>-outside-lambda-error ] unless*
10     parse-def suffix! ;
11
12 SYNTAX: [| parse-lambda append! ;
13
14 SYNTAX: [let parse-let append! ;
15
16 SYNTAX: :: (::) define-declared ;
17
18 SYNTAX: M:: (M::) define ;
19
20 SYNTAX: MACRO:: (::) define-macro ;
21
22 SYNTAX: MEMO:: (::) define-memoized ;
23
24 {
25     "locals.macros"
26     "locals.fry"
27 } [ require ] each
28
29 "prettyprint" vocab [
30     "locals.definitions" require
31     "locals.prettyprint" require
32 ] when