Open
Description
64-bit longs are great for most normal usage. But some more advanced scenarios will require larger integer values (e.g. working with Crypto primitives, high precision fixed point integer maths etc.)
The goal for this Bounty is to provide a new 256-bit integer type for the CVM, that is well integrated with CVM numerical capabilities.
Requirements:
- Must support 256-bit signed integer maths consistent with the current 64-bit longs
- Must implement a new first class CVM data type (should extend ACell)
- Must have extensive testing (generative + important examples / edges cases)
- Must by supported by the key CVM functions (addition, multiplication, comparators, abs, inc, etc.)