forked from ocaml-community/yojson
-
Notifications
You must be signed in to change notification settings - Fork 1
/
README
35 lines (24 loc) · 1.18 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Design goals:
- reducing inter-package dependencies by the use of polymorphic
variants for the JSON tree type
- allowing variants of the JSON tree type to be shipped by the library
itself or to be easily created as extensions of the library
- allowing type-aware serializers/deserializers such as json-static
to read and write directly without going through a JSON tree,
for efficiency purposes.
This requires making readers and writers of JSON atoms (int, string,
etc.) to be exported and composable.
- providing a few non-standard, optional extensions of JSON.
These extensions will include:
* optional quotes around "simple" field/constructor names
* a syntax for tuples (at least 2 elements): (x, y)
* a syntax for variants (0 or 1 arg only): <Foo> <Bar:"abc">
Other choices already in json-wheel:
- distinction between ints and floats (optional)
- Getting rid of the UTF-X encoding constraint that prevents from
exchanging binary data:
* encoding is ASCII except for the contents of string literals
* string literals may represent arbitrary sequence of bytes
* \uABCD escapes in string literals expand to UTF-8
Miscellaneous:
- no dependency on ocamlnet for UTF-8