Go to file
Tony Garnock-Jones adc4f10d4c Small win for writing large integers 2022-07-13 14:09:21 +02:00
_includes Put cheatsheet in an appendix 2022-06-20 17:05:47 +02:00
_layouts Add redirect 2022-06-18 21:51:16 +02:00
_plugins Proper layouting 2019-08-18 22:08:55 +01:00
doc Update docs 2022-06-08 16:13:17 +02:00
git-hooks Rearrange tests to include test data. As part of this, remove tests for python2; from here out, python2 compatibility will likely rot. 2022-01-07 21:14:21 +01:00
historical Correct names 2022-03-07 08:31:24 +01:00
implementations Small win for writing large integers 2022-07-13 14:09:21 +02:00
path Update compiled schema files 2022-06-19 11:32:56 +02:00
schema Update compiled schema files 2022-06-19 11:32:56 +02:00
tests Repair test data 2022-06-19 13:54:34 +02:00
.gitignore Update PDF generation 2022-06-18 21:51:09 +02:00
.gitlab-ci.yml Update CI script 2021-05-21 21:58:31 +02:00
LICENSE LICENSE, NOTICE, README.md 2019-08-08 14:46:03 +01:00
Makefile Update PDF generation 2022-06-18 21:51:09 +02:00
NOTICE NOTICE 2022-06-10 17:48:30 +02:00
README.md Fix spec issues with len() and IEEE754 endianness (thanks to isd) 2022-06-18 21:51:16 +02:00
TODO.md Note in TODO.md 2020-10-26 14:15:03 +01:00
TUTORIAL.md Correct names 2022-03-07 08:31:24 +01:00
_config.yml New "blue jelly" machine-oriented binary syntax, inspired by argdata 2022-06-18 21:51:16 +02:00
canonical-binary.md Permit overlong SignedInteger encodings 2022-06-19 17:20:25 +02:00
cheatsheet.md Put cheatsheet in an appendix 2022-06-20 17:05:47 +02:00
conventions.md Update conventions.md 2022-06-18 21:51:16 +02:00
index.md Tweak jekyll setup 2019-08-11 16:19:08 +01:00
normalize.css Proper layouting 2019-08-18 22:08:55 +01:00
notes.mb.md Proper layouting 2019-08-18 22:08:55 +01:00
preserves-binary.md Clarify 2022-07-10 13:21:31 +02:00
preserves-path.md Idea for preserves path count function 2022-06-06 14:27:47 +02:00
preserves-schema.md Begin sketch of Preserves Schema semantics 2022-06-09 21:30:56 +02:00
preserves-text.md Tweaks 2022-06-19 14:36:12 +02:00
preserves.css Style tweak 2022-06-19 21:10:49 +02:00
preserves.el Revised preserves.el instructions 2021-03-11 09:10:11 +01:00
preserves.md Tweaks 2022-06-19 14:36:12 +02:00
questions.md questions.md 2022-06-18 21:51:16 +02:00
quoting.rkt Explore quoting. 2018-12-06 21:25:51 +00:00
quoting.v Drastically improve quoting.v - including a much better main theorem 2020-06-18 23:57:42 +02:00
representations.md New "blue jelly" machine-oriented binary syntax, inspired by argdata 2022-06-18 21:51:16 +02:00
run-jekyll run-jekyll 2022-06-09 15:39:54 +02:00
setup.sh The Racket preserves package needs a local copy of schema.prs for the package-builder to work. Use a git hook to keep it in sync with the master copy 2021-05-26 14:27:03 +02:00
why-not-json.md Proper layouting 2019-08-18 22:08:55 +01:00
xml-infoset.prs XML Infoset convention 2021-09-30 14:46:46 +02:00

README.md

projectpages projecttree title no_site_title
https://gitlab.com/preserves/preserves https://gitlab.com/preserves/preserves/tree/main Preserves: an Expressive Data Language true

This repository contains a proposal and various implementations of Preserves, a new data model, with associated serialization formats, in many ways comparable to JSON, XML, S-expressions, CBOR, ASN.1 BER, and so on.

Core documents

Preserves data model and serialization formats

Preserves is defined in terms of a syntax-neutral data model and semantics which all transfer syntaxes share. This allows trivial, completely automatic, perfect-fidelity conversion between syntaxes.

Preserves schema and queries

Implementations

Implementations of the data model, plus the textual and/or binary transfer syntaxes:

Implementations of the data model, plus Syrup transfer syntax:

Tools

Preserves documents

Preserves Schema documents and codegen

Additional resources

Contact

Tony Garnock-Jones tonyg@leastfixedpoint.com

Licensing

The contents of this repository are made available to you under the Apache License, version 2.0 (http://www.apache.org/licenses/LICENSE-2.0), and are Copyright 2018-2022 Tony Garnock-Jones.