X-Git-Url: https://code.kerkeslager.com/?p=ton;a=blobdiff_plain;f=README.rst;h=bb854ee7211c3de0a18dabdde017f71070039dde;hp=4a841d69ec35d0a019321ebf72b8284c2f32a947;hb=HEAD;hpb=6102d28307a3efe75f1d9cb6b317c37eaa0d0907 diff --git a/README.rst b/README.rst index 4a841d6..bb854ee 100644 --- a/README.rst +++ b/README.rst @@ -1 +1,22 @@ -# TON: Twofold Object Notation +TON: Twofold Object Notation +============================ + +TON is a twofold object notation with equivalent binary and human-readable +forms. The binary form is optimized for speed and size, while the human- +readable form is designed to be easy-to-understand. Every TON object in binary +representation has one unambiguously equivalent TON string representation +(ignoring whitespace), and every TON object in string representation has one +unambiguously equivalent TON binary representation. This means that you can +use the binary representation and get all the benefits of binary, but if you +need to inspect the contents of the binary it's simple to convert it to the +string notation and get all the benefits of a human-readable representation. + +Without further ado, here's what the human-readable representation looks like::: + + { + 'foo'utf8: 1i8, + 'bar'utf8: 'baz'utf16, + 'qux'utf8: [1i16, -1i16], + 'quux'utf8: [2i32, -2i32], + 'quuz'utf8: [3i64, -3i64] + }