Open patriknw opened 8 years ago
One idea for an improvement is to add explicitly distinguished duplicates of the overloaded ~>
methods such that it becomes clear what happens. These could be named sink_~>
(for SinkShape), importSink_~>
(for Graph[SinkShape, _]), etc.
I like that, since when issues fixed it's easy to spot what to remove. Perhaps have a common prefix for all all those, so that those show up together in content assist (if that works with implicits)
or provide a way to use more specific methods or type annotations to be able to get more specific error messages when in trouble
b.addEdge
gives better error messages but it's a rather big syntax step to change from ~> tob.addEdge
Example of a mistake that I did:
The problem here was that I incorrectly used UniformFanOutShape, which resulted in Any as the type for the
partial.out(0)
andpartial.out(1)
. The error message was:When switching to addEdge it was clear: