5

昨天@headius / Charles Nutter 在推特上提出了一个非常有趣的想法:

@danny_l Gafter 犯了同样的错误;我并不是说分叉的 Java,就像 Groovy 是分叉一样。我想要一个带有闭包的“主要是Java”。

或@danny_l / Danny Lagrouw 的回复:

@headius 或者 BGGA 原型是否可以“绑定”任何未来版本的 Java?这可能有用

这也是我真正希望看到的。难道我们不能有某种字节码预处理器来使 BGGA 原型在任何现代 Java 版本上工作吗?我的意思是 scala、Groovy 和 JRuby 有闭包并产生有效的字节码!

我什至愿意帮助并为此付出努力。虽然我真的不知道从哪里开始。

(以上是我写的关于这个话题的文的节选)

其他人如何看待这个想法?

4

2 回答 2

3

“预处理器”这个词把我带回了 C++,它让我害怕。

有一个奇怪的二分法:我庆祝 JVM 上语言的多样化花园,但我认为“熊妈妈”(又名 Java)不应该像这样支离破碎。我们需要一个坚实的基础。

也就是说,我赞成关闭 BGGA。我还认为一种语言应该提供其全部功能。如果一个团队有不能处理闭包(或泛型,或线程(!!))的人,那么该团队应该通过代码审查和静态分析来监督自己。

也许一个想法是在编译时切换到“禁止”这样的高级功能,但即使这样似乎也有点苛刻。

我认为'bolt-on' 的想法实际上是在试图解决Java 领域中的领导层断裂问题。与技术相比,这个问题更具政治性和外交性。

于 2008-10-11T14:17:54.553 回答
1

使这些东西成为一个螺栓的问题是您创建了一种支离破碎的语言。

java语言是java的最小部分,java。图书馆和文化构成了更大的部分。使闭包和泛型成为螺栓连接意味着它们不能在核心库中使用,或者核心库需要螺栓连接存在于正在使用的 SDK 中。这充其量会在库中产生碎片(因为一些开发人员致力于核心工作,而一些开发人员需要补充),最坏的情况意味着我们将开始在 java 的庄园中拥有 java 的“分发”,每个包含不同的集合罐子和“螺栓”。

我会说这是我宁愿远离的滑坡的开始。

于 2008-10-11T14:08:03.140 回答