这个演示中使用的语言是什么?

时间:2011-07-07 02:37:17

标签: eclipse xtext

我刚刚阅读了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» {
    }
'''

语言是什么?

3 个答案:

答案 0 :(得分:3)

您所指的语言称为 Xtend2 ,是一种类似Java的编程语言,专为代码生成而定制。它具有一些非常有用的概念,如闭包,动态调度,类型推断和您已经看过的丰富字符串。 Xtend2代码可以由JVM执行,因为每次点击保存时它都被翻译成人类可读的Java代码。 Sven Efftinge blogged about Xtend2's core ideas前一段时间。还有一个tutorial on the Xtext website(您在问题中提到的页面)。

此外,Xtend2分享了Xbase, a reusable foundation for programming languages built with Xtext的大多数想法。

答案 1 :(得分:0)

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

答案 2 :(得分:0)

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

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