【问题标题】:BGGA closures as a bolt-on solution to java?BGGA 闭包作为 Java 的附加解决方案?
【发布时间】:2010-09-16 16:00:34
【问题描述】:

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

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

或@danny_l / Danny Lagrouw 的回复:

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

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

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

(以上是我写的关于这个话题的blogpost的摘录)

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

【问题讨论】:

    标签: java closures bgga


    【解决方案1】:

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

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

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

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

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

    【讨论】:

      【解决方案2】:

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

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

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

      【讨论】:

        猜你喜欢
        • 2011-12-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-09-23
        相关资源
        最近更新 更多