0

刚刚看了eclipse xtext的文档,发现它使用的语言和java很像,但是有一些不同:

http://www.eclipse.org/Xtext/documentation/2_0_0/040-first-code-generator.php

例如,它有这样一个代码片段:

def compile(Entity e) '''
    package «e.eContainer.fullyQualifiedName»;

    public class «e.name» {
    }
'''

语言是什么?

4

3 回答 3

3

您所指的语言称为Xtend2,是一种类似 Java 的编程语言,专为代码生成而定制。它具有一些非常有用的概念,例如闭包、动态分派、类型推断和您已经看到的丰富字符串。Xtend2 代码可以由 JVM 执行,因为每次点击保存时它都会被转换为人类可读的 Java 代码。Sven Efftinge 不久前在博客中介绍了 Xtend2 的核心理念Xtext 网站(您在问题中提到的页面)上也有一个教程。

此外,Xtend2 分享了 Xbase 的大部分想法,Xbase 是使用 Xtext 构建的编程语言的可重用基础

于 2011-07-07T07:34:40.000 回答
0

它似乎是某种代码生成符号(当然可以通过阅读页面标题来推测)。另一个“duhh!”:他们似乎将整个包称为 Xtext。但是,我没有找到任何可以命名它们用于语法、语义等的 2-3 种不同语言的东西。

于 2011-07-07T02:50:38.547 回答
0

看起来像 Scala + 一些带有所谓合并代码的模板。

http://www.scala-lang.org/

于 2011-07-07T02:52:40.797 回答