Jsonnet soll ihnen darum dank vieler nützlicher Datenspezifikationsfeatures, die in JSON erweitert werden, die Arbeit erleichtern. Dave Cunningham stellte die Open-Source-Library in Googles Open-Source-Blog vor.
Features von Jsonnet
Jsonnet soll es vor allem durch das Hinzufügen neuer Konstrukte in die Lücken zwischen bestehender JSON-Syntax ermöglichen, neue Features zu implementieren, ohne die Abwärtskompatibilität einzuschränken. So können bestehende Systeme problemlos modifiziert werden, sodass sie Daten in Jsonnet akzeptieren. Damit fungiert Jsonnet ähnlich wie eine Templating-Sprache, die speziell für JSON-Daten erstellt wurde und so weniger fehleranfällig ist, als andere Methoden.
Ein weiterer Vorteil ist die Möglichkeit, Jsonnets Mixins zu nutzen und Features zum Schreiben von modularen Konfigurations-Template-Libraries zu importieren, mit denen sich Domain-spezifische Konfigurationssprachen für bestimmte Applikationen erstellen lassen. Im Gegensatz zu den meisten anderen Konfigurationssprachen verfügt Jsonnet über eine vollständig funktionsfähige Semantik und ist dabei auch noch besonders leichtgewichtig.
Mehr Informationen zu Jsonnet finden sich in der Dokumentation; zudem erklärt ein Tutorial die Nutzung der Sprache genauer. Jsonnet ist Open Source und steht derzeit als Library mit C- und Python-Bindings auf GitHub zur Verfügung.
Aufmacherbild: Vintage composition of handwriting, feather pen and ink. Selective focus on ink and pen. Text is from Shakespeare’s Sonnet 18. von Shutterstock / Urheberrecht: Slaven