Re: [DISCUSS] Static analysis of statics

2019-02-13 Thread Bill Burcham
On Wed, Feb 13, 2019 at 9:03 AM Dan Smith wrote: … > I can switch them to @MakeReferentImmutable if that makes more sense. > > -Dan I think you understand my concerns. I trust you to decide what's best.

Re: [DISCUSS] Static analysis of statics

2019-02-13 Thread Dan Smith
Regarding @Immutable - yes it's intentionally a field annotation as well as a class annotation. The reason to make it a field annotation is that the static analysis tools aren't quite cool enough to figure out if a field is really immutable so we have to manually tell the tool that the field is imm

Re: [DISCUSS] Static analysis of statics

2019-02-12 Thread Bill Burcham
I think the @Immutable anno in *Java Concurrency and Practice* is a class annotation—not a field one. Looking at that PR, it looks like this @Immutable anno is usable both on a type (class) and on a field. Is that an oversight? If not, then what does it mean? Does @Immutable on a field mean both:

[DISCUSS] Static analysis of statics

2019-02-08 Thread Dan Smith
Hi devs, We've expressed interest in getting rid of singletons and allowing multiple copies of cache to run in the same JVM. I'd like to get a handle on what static state we have. As a first step I'd like to introduce a few annotations and some static analysis to find all of our mutable static fi