Skip to content
JohnNilsson edited this page Sep 14, 2010 · 1 revision

As a platform I think the system should be more of a meta-system to support extensions in DSLs and semantics that needs to be invented.

A running instance consists of a tree (or forest?) representing the description of the problem and the solution the system is aimed at. To support various languages at various levels of abstractions a meta model of languages and their interactions is provided.

To support interoperability between languages, or language fragments, there should be a way to define mappings between the languages, or translations. Consider this fragment of Java combined with SQL

public int age(long id) { return select age from Customer where id = :id }

here the SQL code is subtree of the method block. To be allowed by the system there must a SQL→Java translation available with a correct java type.

As an alternative there should be a translation from Java and SQL to a common IL with a valid type.

Clone this wiki locally