+++ /dev/null
-Are not there any satisfiable codecs?
-
-=> https://en.wikipedia.org/wiki/Distinguished_Encoding_Rules#DER_encoding DER\r
-=> https://en.wikipedia.org/wiki/Distinguished_Encoding_Rules#CER_encoding CER\r
-=> https://datatracker.ietf.org/doc/html/rfc1014 XDR\r
-=> https://www.JSON.org/json-en.html JSON\r
-=> https://bsonspec.org/ BSON\r
-=> https://msgpack.org/ MessagePack\r
-=> https://datatracker.ietf.org/doc/html/rfc8949 CBOR\r
-=> https://datatracker.ietf.org/doc/html/draft-mcnally-deterministic-cbor-11 dCBOR\r
-=> http://cr.yp.to/proto/netstrings.txt Netstrings\r
-=> https://wiki.theory.org/BitTorrentSpecification#Bencoding Bencode\r
-=> https://en.wikipedia.org/wiki/Canonical_S-expressions Canonical S-expression\r
-
- | Schemaless | Simple | Deterministic | Streamable | Compact
-ASN.1 DER | N | N | Y | N | N
-ASN.1 CER | N | N | Y | Y | N
-XDR | N | Y | N | N | N
-JSON | Y | N | N | Y | N
-BSON | Y | Y | N | N | N
-MessagePack | Y | Y | N | N | Y
-CBOR | Y | N | N | Y | Y
-dCBOR | Y | N | Y | N | Y
-Netstrings | Y | Y | Y | N | ~
-Bencode | Y | Y | Y | Y | ~
-CSExp | Y | Y | Y | Y | ~
-KEKS | Y | Y | Y | Y | Y
-
- | BigStr | BinStr | UTF8Str | Int | BigInt | List | Struct | Time
-ASN.1 DER | Y | Y | Y | Y | Y | Y | Y | Y
-ASN.1 CER | Y | Y | Y | Y | Y | Y | Y | Y
-XDR | N | Y | Y | Y | N | Y | Y | N
-JSON | Y | N | Y | Y | Y | Y | Y | N
-BSON | N | Y | Y | Y | N | Y | Y | Y
-MessagePack | N | Y | Y | Y | N | Y | Y | N
-CBOR | Y | Y | Y | Y | N | Y | Y | N
-dCBOR | Y | Y | Y | Y | N | Y | Y | N
-Netstrings | Y | Y | N | N | N | N | N | N
-Bencode | Y | Y | N | Y | Y | Y | Y | N
-CSExp | Y | Y | N | N | N | Y | N | N
-KEKS | Y | Y | Y | Y | Y | Y | Y | Y
-
-Note about CBOR:
-
-* Hardly you will find wide range of CBOR libraries supporting strict
- validation of deterministically encoded CBOR structures.
-* Tagged string/integer can not be taken as a viable first-class
- bigint/datetime data support, because many decoders do not support
- tags and won't be able to interpret/validate them.
-* Non-string map keys very complicates representation process for
- dynamically types languages.
-Currently there are draft versions of the codec written on C, Go,
-Python and Tcl.
+Currently there are draft versions of the codec written on
+C99, Go, Python3 and Tcl.
You can obtain development source code with:
git clone git://git.cypherpunks.su/keks.git
--- /dev/null
+=> https://en.wikipedia.org/wiki/Distinguished_Encoding_Rules#DER_encoding DER\r
+=> https://en.wikipedia.org/wiki/Distinguished_Encoding_Rules#CER_encoding CER\r
+=> https://www.JSON.org/json-en.html JSON\r
+=> https://bsonspec.org/ BSON\r
+=> https://msgpack.org/ MessagePack\r
+=> https://datatracker.ietf.org/doc/html/rfc8949 CBOR\r
+=> https://datatracker.ietf.org/doc/html/draft-mcnally-deterministic-cbor-11 dCBOR\r
+=> http://cr.yp.to/proto/netstrings.txt Netstrings\r
+=> https://wiki.theory.org/BitTorrentSpecification#Bencoding Bencode\r
+=> https://en.wikipedia.org/wiki/Canonical_S-expressions Canonical S-expressions\r
--- /dev/null
+Are not there any satisfiable [codecs]?
+
+ | simple | deterministic | streamable | compact
+------------+--------+---------------+------------+--------
+ASN.1 DER | N | Y | N | N
+ASN.1 CER | N | Y | Y | N
+JSON | N | N | Y | N
+BSON | Y | N | N | N
+MessagePack | Y | N | N | Y
+CBOR | N | N | Y | Y
+dCBOR | N | Y | N | Y
+Netstrings | Y | Y | N | ~
+Bencode | Y | Y | Y | ~
+CSExp | Y | Y | Y | ~
+KEKS | Y | Y | Y | Y
+
+ | big | bin | UTF | | big | | |
+ | str | str | str | int | int | list | map | time
+------------+-----+-----+-----+-----+-----+------+-----+-----
+ASN.1 DER | Y | Y | Y | Y | Y | Y | Y | Y
+ASN.1 CER | Y | Y | Y | Y | Y | Y | Y | Y
+JSON | Y | N | Y | Y | Y | Y | Y | N
+BSON | N | Y | Y | Y | N | Y | Y | Y
+MessagePack | N | Y | Y | Y | N | Y | Y | N
+CBOR | Y | Y | Y | Y | N | Y | Y | N
+dCBOR | Y | Y | Y | Y | N | Y | Y | N
+Netstrings | Y | Y | N | N | N | N | N | N
+Bencode | Y | Y | N | Y | Y | Y | Y | N
+CSExp | Y | Y | N | N | N | Y | N | N
+KEKS | Y | Y | Y | Y | Y | Y | Y | Y
+
+Note about CBOR:
+
+* Hardly you will find wide range of CBOR libraries supporting strict
+ validation of deterministically encoded CBOR structures.
+* Tagged string/integer can not be taken as a viable first-class
+ bigint/datetime data support, because many decoders do not support
+ tags and won't be able to interpret/validate them.
+* Non-string map keys very complicates representation process for
+ dynamically types languages.
* It *should* differentiate binary and human-readable strings.
* It *would* be nice to have human-editable intermediate representation.
-<<[ComparisonWithOtherCodecs]\r
+<<[comparison]\r
[INSTALL]
[encoding/]
# git://git.stargrave.org/swg.git is used
html=spec.html
-SWG_DO_BACKS=0 swg htmls $html
+SWG_DO_BACKS=0 SWG_DO_SRC=0 swg htmls $html
perl -i -npe 's#^<title>.*$#<title>KEKS</title>#' $html/index.html
find $html -type d -exec chmod 755 {} +
find $html -type f -exec chmod 644 {} +