At Status we require that for cryptographic work and we are developing and 
supporting the following:

  * nim-ttmath: 
[https://github.com/status-im/nim-ttmath](https://github.com/status-im/nim-ttmath).
 This wraps the [ttmath C++ bignum library](https://www.ttmath.org/). This 
requires the [following patches](https://github.com/nim-lang/Nim/pull/7333) to 
`static[int]`.
  * Mpint: 
[https://github.com/status-im/mpint](https://github.com/status-im/mpint). WIP, 
don't use it.



You can also check my own number theory repo: 
[https://github.com/numforge/number-theory](https://github.com/numforge/number-theory)
 which is just a reorganization of code I've used for Project Euler ([my repo 
here](https://github.com/mratsim/nim-projecteuler)).

Of note it will provide a template that replace all operations in a scope by 
modulo operation:
    
    
    import number_theory
    
    modulo(42):
      let x = 10 + 50
      let y = x ^ 10
      echo y
    

Currently it does not work though, you get stack overflow because the 
+/-/mul/div within addmod, submod, etc are also replaced ...

Edit @lsrcd: Python is probably using libmpdec too: 
[http://www.bytereef.org/mpdecimal](http://www.bytereef.org/mpdecimal)/

Reply via email to