From 76cbe8384213c4e3a5342bcbe94875e227bf20d2 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Tue, 24 Mar 2015 00:59:01 +0100 Subject: Assign --- parser.y | 7 +++++-- 1 file 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 } -- cgit v1.2.3