It's always bothered me how
public A(String s) {
this(s.isEmpty());
}
is allowed but public A(String s) {
boolean helpfulName = s.isEmpty();
this(helpfulName);
}
isn't