diff --git a/BACKLOG.md b/BACKLOG.md new file mode 100644 index 0000000..2135c0b --- /dev/null +++ b/BACKLOG.md @@ -0,0 +1,39 @@ +There still an issue with inferring for a given function call / +constant reference where that thing is defined. + +We're currently generating the forest of references from the call +graph by calculating a spanning forest. There's a problem with that. +Consider the following map of call-sites: + + { + a: [b] + b: [] + } + +The following is a spanning tree: + + { + a: [] + b: [] + } + +Here it looks like `a` doesn't call `b`. + + +We should also store all the call-sites. These will end up as leaves +in the call tree. + + + { + "K": {}, + "A": {}, + "f": { + "f": "__cycle__" + }, + "A.f": { + "K.g": {} + } + } + + +Write graphviz output.