Settings

Theme

Baboon: Data Modeling with Automatic Evolutions and tagless binary codecs

github.com

17 points by pshirshov 16 days ago · 8 comments

Reader

SubiculumCode 16 days ago

I don't understand what this is.

  • pshirshovOP 16 days ago

    I've added a simple explanation right into the readme: "Essentially, you define your data structures and Baboon generates implementations for you. Then you define new versions, Baboon generates new versions of the structures, the conversions from old structure versions to new ones and forces your to provide conversions which cannot be derived automatically. Also it comes with extremely efficient tagless binary encoding for all your structures."

    This thing can remove a lot of manual work and save your ass sometimes from the effects of incorrect migrations.

    • goostavos 16 days ago

      FWIW, even with the "simple explanation," I'll echo OP's statement that the README doesn't really explain what it is or what it's solving. "Generates new versions of the structures" might mean something really clear to you, but even the phrase "data modeling" is enough to trigger lots of conflicting baggage in my head. Also: it took awhile it realize it's for Scala. I initially assumed this was a Smithy-like competitor.

      It looks neat (once I found your docs)! Show what it is and what it solves in your README! The structural inheritance is slick.

      • pshirshovOP 16 days ago

        It's not for Scala. Currently there are Scala and C# backends, TypeScript and Python are on the way.

        We did everything to make it easy to add new backends. As much as that can be considering the feature set.

        > Smithy

        Little bit different. Smithy is more an RPC tool. Baboon is not (or not yet), it allows you to model your data structures and derive conversions (migrations) between versions.

      • SubiculumCode 16 days ago

        As someone who runs data analyses on experimental data, my first thought that this was a tool to automatically data munge, and perform analyses. My current impression it is a tool to convert database type information structures to new formats. None of these are probably correct.

culi 16 days ago

yet another new programming language that doesn't display example code on the first page. Here's the docs:

https://github.com/7mind/baboon/blob/main/docs/language-feat...

  • pshirshovOP 16 days ago

    A data modeling language which derives evolution code automatically, not a general purpose programming language.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection