[Soot-list] VASCO: An Interprocedural Data Flow Analysis Framework using Value Contexts

Bodden, Eric eric.bodden at sit.fraunhofer.de
Thu Apr 25 01:55:51 EDT 2013


Hello.


> 1. Yes, definitely, although it might be better to let the project evolve independently until a stable point is reached - as there is still scope in order to change the API depending on public feedback. Once it is in the Soot code base I would assume the API would need to be more rigid as Soot users would expect compatibility across versions.

Sure, that makes a lot of sense.

> 2. I haven't thought of this but will try to see if this fits. I guess the main difference is that Heros uses flow functions D -> Set<D> while Vasco uses A -> A, (where A corresponds to Set<D> in set problems) because non-distributive functions cannot be decomposed.

I see. I think such a "compatibility layer" might be quite interesting, especially also to facilitate empirical comparisons. If being able to run an IFDS-based analysis in your (more expressive) framework, one could measure how much that additional expressiveness actually costs in terms of complexity.

> In any case, I was planning to add Soot-specific template classes that contain boilerplate code such as instantiating the correct types and using the default call graph to resolve invocations.

Sounds great.

Eric


More information about the Soot-list mailing list