From 6e57fe7e099e3cba2db400b13c5bb59301a49ce6 Mon Sep 17 00:00:00 2001 From: Aidan Hahn Date: Tue, 12 Nov 2019 13:25:53 -0800 Subject: [PATCH] many notes to self --- pkg/shsh/token.go | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/pkg/shsh/token.go b/pkg/shsh/token.go index ed13203..3438006 100644 --- a/pkg/shsh/token.go +++ b/pkg/shsh/token.go @@ -7,6 +7,17 @@ import ( type operation func(Token) Token +/* + * LIST: a list of elements + * OPERAND: an element which is + */ +type parse_tag enum { + LIST_T iota + OPERAND_T iota + OPERATOR_T iota + OPERATION_T iota +} + type Token struct { Token *next interface{} *_inner @@ -42,9 +53,13 @@ func lex(string input) string { } func parse(Token *arg) { - + // if operand determine if operator + // determine operator precense in symbol table + // Determine if a list is an operation or a list } func eval(Token *tree) Token* { - + // Find operations + // Simplify operations deepest first + // return tree of final Tokens }