Received on the -comments list.

My analysis: while the package { ... } syntax acts as a nice container for multiple class units, and might well have been a nicer syntax for multiple classes in the same source file than aux classes, it's really no different than allowing aux classes to be public; we are still left with the same problem of finding the source file corresponding to com/foo/X.class, because it will not necessarily be the corresponding com/foo/X.java in the source path.




-------- Forwarded Message --------
Subject:        nest syntax alternative
Date:   Fri, 15 Feb 2019 13:19:00 +0100
From:   Maarten Van Puymbroeck <[email protected]>
To:     [email protected]



Hello,

Just thinking out loud here.

Remi's proposals about the nest syntax and flattening of nested subtypes
gave me the idea of "package files".
This would allow all classes of a package to be defined in one file instead
of a directory, making them implicitly part of the same nest without the
nested class issue (if it's considered an issue). The concept would be
compiled away completely.

shedding a bike:

package com.test.expressions {
sealed class Expr {}
record Value(int value) extends Expr;
record Add(Expr left, Expr right) extends Expr;
}

Apart from the choice of nest host, this probably has other concerns. But
maybe the idea might spark some other ideas...

Kind regards,
Maarten.
(just a silent follower)

Reply via email to