If the program runs with more than 125mb of memory, close and reopen it (sometimes it starts with extra but this should not happen normally)
added csc, sec, and cot
Xor bitwise from ^ to ^^
changed power from ** to ^
added the ability to make funcs with no set args to allow optional args
deg2rad()
rad2deg()
degree funcs with all 6 trig funcs
Graphing
history
custom functions in math library
tracing x and y on graphs
graph intersections
optimized build command
scaling point generation for graphing
hard limiting memory
go build && ./opencalccpencalcc
GOMAXPROCS=4 GOMEMLIMIT=1GiB CGO_ENABLED=1 go build -ldflags="-s -w" -trimpath -o openCalcc main.go && strip openCalccpenCalcc
GOMAXPROCS=2 GOMEMLIMIT=512MiB GOGC=50 CGO_ENABLED=1 go build -ldflags="-s -w" -trimpath -o openCalcc main.go && strip openCalcc && upx --best --lzma openCalcc--lzma openCalcc
GOMAXPROCS=2 GOMEMLIMIT=120MiB GOGC=50 CGO_ENABLED=1 go build -ldflags="-s -w" -trimpath -o openCalcc main.go && strip openCalcc && upx --best --lzma openCalcc--lzma openCalcc
GOMAXPROCS=1 GOMEMLIMIT=124MiB GOGC=25 CGO_ENABLED=1 go build -ldflags="-s -w" -trimpath -gcflags="-m=2" -o openCalcc main.go && strip -s openCalcc && upx --ultra-brute --best --lzma openCalcc--lzma openCalcc
doing float mode trig gives wrong answer
I decided to make the main file in main.go using fyne becuase it's a well made desktop app library.
I tried to make my own math tool but I quickly found mathcat online so I forked it and added a few more features