summaryrefslogtreecommitdiff
path: root/cmd
diff options
context:
space:
mode:
Diffstat (limited to 'cmd')
-rw-r--r--cmd/perc/main.go7
1 files changed, 7 insertions, 0 deletions
diff --git a/cmd/perc/main.go b/cmd/perc/main.go
index d33593c..2cee268 100644
--- a/cmd/perc/main.go
+++ b/cmd/perc/main.go
@@ -56,6 +56,13 @@ func runCommand(args []string) (string, error) {
}
input := strings.Join(args[1:], " ")
+
+ // Try RPN parsing first (for bare RPN expressions like "3 4 +")
+ if rpnResult, rpnErr := runRPN(input); rpnErr == nil {
+ return rpnResult, nil
+ }
+
+ // Fall back to percentage calculation
result, err := calculator.Parse(input)
if err != nil {
return "", err