pi-digits
Calculate requested digits of Pi.
Built using The BBP Algorithm for Pi.
Building
Install stack
, then run stack build
from inside the repository.
Running
Run stack exec pi-digits-exe
, or execute the binary found in ./.stack-work/install/
.
TODO
- [X] Add a function for converting results to decimal (and binary).
- [X] Implement threading.
- [X] Implement
optparse-applicative
for more formal/extensive arg parsing.
- [X]
Replace the mess in prompt
with a monad. Issue corrected by using optparse-applicative
.
- [X] Separate into different files. Possibly parsing and logic files.
- [X]
Find a better way to transfer "globals", like delim
and printFun
. parseIndex
handles all parsing and calling logic now.
- [X] Implement a faster mod operation, to allow for larger numbers (like 12345678901234567890).
It will likely be implemented with the algorithm explained in the paper. Used a slightly faster, less iterative way, implemented with this gist.
- [X] Customize print behavior and frequency.
Flush output every N digits, or something similar. Output is flushed as it's written. This can be disabled with --buffer
.