> On Jun 26, 2018, at 6:09 AM, Brian Goetz <brian.go...@oracle.com> wrote:
> 
> 
>> Here are two more arguments in favor of language-level stripping:
>> 
>> 1. Strings inside annotations aren't left out. Whenever an annotation 
>> attribute feels like something users may want to use an RSL for, the best we 
>> can hope for (if we don't have automatic unindenting) is for the 
>> specification of that attribute to say "consumers of this data really should 
>> call .align() on this" - quite unsatisfying, and we can be sure most 
>> annotation specs won't bother.
> 
> This seems like a pretty corner^3 case to me; long strings in annotations are 
> kind of questionable already, multi-line strings in an annotation seem even 
> more so, and in those cases where you absolutely need to be divorced from the 
> incidental indentation, you could just align it yourself correctly, at the 
> cost of uglier indentation (or pull it out into a static var.)  

Just to be clear about dependencies: "pull it out into a static var" only works 
if the 'align' call is a constant expression. Which it ought to be, yes, but 
that's a separate feature we'll need to deliver.

(And really ought to, I think. Otherwise, if we anticipate some releases in 
which 'align' calls disrupt what would otherwise be constant expressions, 
that's a notable argument in favor of the language approach.)

Reply via email to