After some trial and error, I was able to make the following bash script, which will take the X clipboard selection (containing math operations you want to perform), run it through bc (to do the math), replace the X clipboard with the result, and paste it, overwriting the previous result:
output=$(echo "$(xclip -o)" | bc) # take the X clipboard and run it through bc
sleep 0.2s # wait before continuing or else this won't work
xdotool key BackSpace # clear the selection
printf $output | xclip -i # write the output to the X clipboard
xdotool click 2 # paste the result by clicking the middle button
I set this as Super-E on my computer and probably will use it every once in a while for programs which don't implement math input.
In other words, with this you can select text containing mathematical operations, press a key combination, and the selected text will be replaced by the result of the math.
Improvements welcome. There probably are better ways to do this.
Many older languages evaluated expressions left to right. For assemblers this saves you from managing intermediate values and you can spit out ALU instructions in order without need for register assignment magic.
VisiCalc [1], the first spreadsheet program and the "killer app" for business on the Apple II, also used left-to-right evaluation. Dan Bricklin said he needed people to be able to quickly enter equations as they did on a cheap (non-RPN) calculator [2, at around 35:10].
I believe there is a lot of software that can do math on input. Holding and moving up/down to increase or decrease is also supported in a lot of software.
The first program I used with math on input was alphacam, it was mind blowing to me when I discovered it. Any time I use a program with out it now it feels lacking. The Godot editor has this feature too, just to drop another great piece of open source software with it.
I was hoping I would learn that you could do parametric formulas to define curves, and maybe even Taylor series for curves too hard to define in closed form. Someday.
Would love it if more software and websites did this. Banking, online stores, etc. could benefit a lot. Even some CAD software doesn't have this functionality.
In YNAB, it's essential, so I'm glad they have it.
In other words, with this you can select text containing mathematical operations, press a key combination, and the selected text will be replaced by the result of the math.
Improvements welcome. There probably are better ways to do this.