It's possible to use Chord for open programs; I did it for Hadoop and
suchlike for *my* dissertation.
(
http://www.eecs.berkeley.edu/Pubs/TechRpts/2012/EECS-2012-67.pdf)
As I recall, there were basically two strategies I used. First,
writing test harnesses. This is usually straightforward and can even
be automated -- you use Java reflection to slurp in the
class-under-test, and then emit a method call to each method, with
dummy int and string arguments to taste. A benefit of this is that you
can then manually refine the test harness to look more like real code.
Second, hacking the underlying analysis to add explicit points-to and
reachability rules to cover open programs. You do things like
creating a datalog relation of entry points; then specify that all
those are reachable, and that they can be called with the generic
object of each type as argument. I think my dissertation code is still
in the repository, and that took this approach.
--Ari
> --
> You received this message because you are subscribed to the Google Groups
> "chord-discuss" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to
chord-discus...@googlegroups.com.
> To post to this group, send email to
chord-...@googlegroups.com.
> Visit this group at
https://groups.google.com/group/chord-discuss.
> For more options, visit
https://groups.google.com/d/optout.
--
Ari Rabkin