aboutsummaryrefslogtreecommitdiff
path: root/parser.y
diff options
context:
space:
mode:
Diffstat (limited to 'parser.y')
-rw-r--r--parser.y7
1 files changed, 5 insertions, 2 deletions
diff --git a/parser.y b/parser.y
index 1b503bd..0b4e43d 100644
--- a/parser.y
+++ b/parser.y
@@ -2,6 +2,8 @@
package main
import "fmt"
+
+var vars = map[S][]interface{}{}
%}
%union {
@@ -40,14 +42,15 @@ line
| adverb monadic vector
| QUAD STRING { fmt.Println(quad(string($2))) }
| RBRACE STRING { cmd(string($2)) }
+ | STRING ASSIGN vector { vars[$1] = $3 }
+ | STRING { fmt.Println(vars[$1]) }
vector
: value { $$ = append($$, $1) }
| vector value { $$ = append($1, $2) }
value
- : STRING { $$ = $1 }
- | QUOTED { $$ = $1 }
+ : QUOTED { $$ = $1 }
| INTEGER { $$ = $1 }
| FLOAT { $$ = $1 }
| COMPLEX { $$ = $1 }