Hacker News new | ask | show | jobs
by taktoa 2642 days ago
Trees are easy in Rust. It's graphs that are harder.
1 comments

Git “trees” are graphs though, since you have merge commits.
More to the point, they are DAGs. Git objects cannot form a loop, thus they are acyclic. </pedantic>
That's absolutely correct. And your emphasis on this is on point, since DAG are relatively easy to implement in Rust: You just need to use ref-counting (instead of plain `Box` for a Tree) whereas general purpose graphs are harder to implement (and can lead to run-time bugs if node deletions aren't managed properly).