Verizon / quiver

A reasonable library for modeling multi-graphs in Scala
http://verizon.github.io/quiver/
Apache License 2.0
200 stars 39 forks source link

Brings back commented tree ops #31

Closed rossabaker closed 6 years ago

rossabaker commented 6 years ago

None of these operations had unit tests, and were commented in the port to Cats because they used scalaz.Free. This brings them back, backed by an alias to Cofree[Stream, A]. The most obvious difference is that the root label of a Tree is lazy, but the head of a Cofree is not. Unsure whether that will eat us.

It would be far better if we had unit tests for these, but I don't know all the use cases. If someone can supply those, I could be shamed into adding tests.

An alternate approach would be to port scalaz.Tree to cats inside this project.