Comments (2)
The Common Lisp reader lets you tag anything with a number like #1=
and then reference it later with #1#
. It's neat, though I've used it maybe once ever. The arbitrary references make it easy to refer to other objects at any level of the hierarchy, and I suspect it minimizes the performance cost you mention, as the reader only needs to keep references to objects which were explicitly tagged.
But as cool as it is, I'm not sure I see the value for EDN, which says it's purely "for the conveyance of values", not objects. Doesn't cyclic data only make sense in the context of objects?
from edn.
says it's purely "for the conveyance of values", not objects
Depends how you define values and objects I guess. But whenever one thing has a relationship with another thing the later usually has a relationship with the former too. e.g books have authors and authors have books.
from edn.
Related Issues (20)
- The edn spec inaccurately describes what characters are allowed in symbols. HOT 3
- json-ld, #iri HOT 1
- Ratio datatype is not part of the spec even though clojure.edn supports it. HOT 6
- Support for not-a-number or non-finite floating point values HOT 1
- Single-quote is not mentioned as a valid symbol character HOT 5
- Spec allows consecutive colons in symbols and keywords HOT 3
- Can Keywords contain escape characters? HOT 1
- Tagged Elements Issue? HOT 3
- Make the spec concrete already HOT 5
- edn spec does not yet include namespace map syntax
- How are consumers supposed to handle values with unrecognized tags? HOT 1
- Reader flag to support unicode escapes in string literals HOT 2
- ns alias HOT 2
- Issue in the spec for keywords
- Alternative string quote syntax HOT 7
- An example of edn file HOT 1
- BNF is absent
- Provide a testsuite for EDN format
- JSON query results output option HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from edn.