> In the code:
>   public deconstructor B(int a, int b) {
>     super(var aa) = this;
>     a = aa;
>     b = this.b;
>   }
> i believe the first line should be
>   A(var aa) = super;

P = e

is like

if (e instanceof P) { rest of method }.

What would be on the LHS of the instanceof would be `this`, not `super`.  This 
is like `if (this instanceof super(var aa))`.  

> I know that you have consider something like this, but i prefer making the 
> deconstructor a method returning a tuple at Java level, to be closer to the 
> JVM level.

Yes, we did consider this, but I don’t like it, because it’s fake.  Having 
tuple-like syntax that you could only use in one place would feel like “glass 
99% empty.”  Unless people can use tuples as returns, destructure them, store 
them in variables, denote their types, pass them to methods, etc, it will just 
be a tease.  No one will thank us, and I don’t think it really carries the 
message home the way the current  framing does.  


Reply via email to