News for hackers. Stuff that matters.
Re:Full Metal Jacket: A Visual Programming Language Based on... by vmorgulis on Saturday July 16, 2016 @02:34PM (#12107374)
Something that could work with git is to use a map.

Transform:

    (a1 a2 (b1 b2))
To:

    -------------
    parent  child
    -------------
    root    list1
    list1   a1
    list1   a2
    list1   list2
    list2   b1
    list2   b2
It should work with diff too if the ids are preserved.
Re:Full Metal Jacket: A Visual Programming Language Based on... by kyllo on Saturday July 16, 2016 @03:20PM (#12107537)
That's exactly how you store a tree in a relational database. Every row has a parent_id column. This language isn't just a tree though, it's a graph, so you would need a row per edge instead of a row per node. It would work with git as long as it's kept in sorted order and doesn't grow extremely large, but it isn't nice to view or edit directly; you would want a graph query language to interact with it.
Re:Full Metal Jacket: A Visual Programming Language Based on... by TeMPOraL on Saturday July 16, 2016 @09:15PM (#12108574)
That would work as long as the author isn't seriously abusing reader macros in the serialized format :).