-
Notifications
You must be signed in to change notification settings - Fork 0
Platform
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.