Between all the major programming language families, you won’t find more than a couple dozen atomic types, a dozen distinct (up to isomorphism) container types, and a couple conventions for nominal containers that achieve globally unambiguous name scoping.
-
-
Show this thread
-
A desirable property here is: A value expressed in a universal interchange format unambiguously expresses its type, with no question of e.g. whether a string should be interpreted as a string, an enum, or a hex encoded byte array.
Show this thread -
Another desirable property is diffability. JSON makes single-line semantic changes require multi-line adjustment of commas, and XML with end tags.
Show this thread -
Finally, real data contains some equivalent of pointers or references, often with cycles. A universal interchange format must be able to express a snapshot of this data at a point in time, including references to external data that may be found elsewhere.
Show this thread -
It’s the lack of this notion of local and remote references in data that leaves Java and C# requiring ad hoc database glue layers in languages that were otherwise sufficiently high-level that they could have solved the problem in a wonderfully general way.
Show this thread
End of conversation
New conversation -
-
-
FlatBuffers has "pointers" (it can express a DAG). It is of course a binary format, but I believe text should be a "UI" feature, not the source of truth (FlatBuffers converts to and from JSON out of the box). Strongly typed, mmap-able data that can evolve flexibly.
-
Is the world ready to freeze in-memory runtime representations of complex structured data? I’m skeptical of this thesis.
- 1 more reply
New conversation -
-
-
The problem with xml is that it continues to be used. A universal interchange format is a pipe dream (see rel. xkcd)... atomic representation means versioning at least... with json you go in knowing parse is needed. Not great but good enough
-
Agreed, but I think a self-consistent, precedent-respecting specification based the known best practices would produce something far more friendly for interchange than JSON or XML.
- 3 more replies
New conversation -
-
-
I don't think a universal interchange format is truly possible. The set of data types you need is *always* further-extensible.
-
A universal file format could enable these to be expressed as a composition of containers in a global namespace and atomic types for now, and parts of the namespace could be standardized over time, for example commonizing Unreal and Unity 3D vectors.
- 1 more reply
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.