summaryrefslogtreecommitdiff
path: root/internal/repl/repl.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/repl/repl.go')
-rw-r--r--internal/repl/repl.go10
1 files changed, 9 insertions, 1 deletions
diff --git a/internal/repl/repl.go b/internal/repl/repl.go
index 79a94f4..ed39755 100644
--- a/internal/repl/repl.go
+++ b/internal/repl/repl.go
@@ -51,7 +51,15 @@ func executor(input string) {
return
}
- // Run the calculation
+ // Try RPN parsing first (for bare RPN expressions like "3 4 +")
+ rpnResult, rpnErr := runRPN(input)
+ if rpnErr == nil {
+ // Valid RPN expression - print result
+ fmt.Println(rpnResult)
+ return
+ }
+
+ // Run the percentage calculation
result, err := calculator.Parse(input)
if err != nil {
fmt.Printf("Error: %v\n", err)