我从来没有写过 DSL,但我认为它是一个新项目的功能(假设的)。最终用户将能够用自然语言表达概念,例如除了当月的第一个星期一之外的 10 点到 11 点之间的工作日。
荷兰用户可能会写weekdagen tussen 10 en 11 behalve op de eerste maandag van de maand。在这种情况下,单词的位置似乎匹配,但可能存在动词/名词等的位置在语言之间可能不同的表达式。
我意识到显而易见的答案(这取决于)。我是一名 .NET 开发人员,我考虑使用 Boo,但我愿意接受建议。我需要了解每个翻译是否需要重写实现的一部分(哪个部分),或者是否有办法进行实际翻译,也许在某种预处理器中。