Hey Chen, " do you mean to implement annotation instances as value objects?" Yes that is what I mean, although I had forgotten they were actually instances of java.lang.reflect.Proxy!
Waiting for other changes that would allow for Annotations to be backed more directly with Value objects is fine, I was mostly interested in if it had been considered. Thank you for your fast response on a Saturday. -Peter On Sat, Feb 21, 2026 at 4:14 PM Chen Liang <[email protected]> wrote: > Hi Peter, do you mean to implement annotation instances as value objects? > > This seems possible specifiation-wise, but since annotations from core > reflection are implemented with java.lang.reflect.Proxy, there are > serialization incompatibility risks. (This risk also blocks a few other > annotation improvement proposals) Other risks may exist too. > > So I think the situation is: > 1. User can start implementing annotations with value objects > 2. The JDK won't consider migrating builtin annotations for now > 3. The door to future migration of builtin annos remain open, but we need > to identify and resolve blockers, and is likely of lower priority given > resource constraints > > Regards > > On Sat, Feb 21, 2026, 17:04 Peter Eastham <[email protected]> wrote: > >> Since this request feels a bit early in the preview lifecycle I'll try to >> keep it brief. I decided to bring it up as it would likely involve a >> Specification Update and I have no idea how long that takes to outline. >> >> Have annotations been considered for the value modifier? My thought >> process here is that the identity of a given annotation isn't particularly >> useful, and the immutable behavior of Annotations mean they fall into a >> similar bucket as Records, where Identity *could* be useful, but not >> necessary. >> >> I tried to scrub over some of the resources, but I couldn't find if this >> topic had been covered. >> >> Thanks, >> -Peter Eastham >> >
