From 3951f8c09b3f49253cf0d354df708069223d0316 Mon Sep 17 00:00:00 2001 From: Sam Anthony Date: Sun, 23 Jul 2023 12:24:32 -0230 Subject: constant and function parsing skeleton --- func.go | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 func.go (limited to 'func.go') diff --git a/func.go b/func.go new file mode 100644 index 0000000..914cb61 --- /dev/null +++ b/func.go @@ -0,0 +1,18 @@ +package main + +import "math" + +// parseFunction returns nil is s is not a valid function. +func parseFunction(s string) func(Stack) { + switch s { + case "sin": + return sin + } + return nil +} + +func sin(stack Stack) { + if len(stack) > 0 { + stack[len(stack)-1] = math.Sin(stack[len(stack)-1]) + } +} -- cgit v1.2.3