On 2/1/24 09:32, didier gaumet wrote:
Bonjour,

je ne sais pas si tu y trouveras ce que tu cherches (je n'ai pas vérifié chaque solution) mais le site officiel Json propose une liste de bibliothèques et utilitaires par langage (dont C et C++) en bas de page:
https://www.json.org


Ça je connais et j'utilise déjà dans le moteur d'inférences libre http://refpersys.org/ la bibliothèque jsoncpp (et j'ai aussi regardé jansson). C'est pour JSON, pas JSON5 ou HJSON.

JSON5 est une extension de JSON (définie en https://spec.json5.org/ ...) qui est un peu moins verbeuse. Par exemple la ligne suivante est valide en JSON5 pas en JSON strict:

    { codage: utf8, chaine: "abcd\nef", longueur: 6,  }

En JSON strict on a le droit de coder seulement

   { "codage": "utf8", "chaine": "abcd\nef", "longueur": 6 }

et donc pour des données de l'ordre de la centaine de kilooctets ça fait une différence de taille. En plus JSON5 est plus lisible par un humain et accepte des commentaires.


Et HJSON est une spécification similaire, définie en https://hjson.github.io/ - permettant des chaines de caractères multilignes.


Actuellement (ce 1er fevrier 2024) https://github.com/RefPerSys/RefPerSys/ (un moteur d'inférences libre, pour lequel je cherche des collaborations futures, peut-être un consortium ITEA or HorizonEurope ou ANR) ne compile même pas. Je suis en train de réécrire son GNUmakefile en utilisant remake.

L'idée serait dans ce moteur d'inférences RefPerSys (voir http://refpersys.org/ - "REFlexive PERsistent SYStem") de persister son état dans des chaines litérales enormes dans des gros fichiers C++ générés par le moteur RefPerSys lui-même.

Voir les vidéos (en 2020) dans https://afia.asso.fr/journee-hommage-j-pitrat/

Librement

--
Basile Starynkevitch             <bas...@starynkevitch.net>
(only mine opinions / les opinions sont miennes uniquement)
92340 Bourg-la-Reine, France
web page: starynkevitch.net/Basile/
See/voir:   https://github.com/RefPerSys/RefPerSys

Répondre à