Melange är en språkbänk som tillhandahåller ett modulärt tillvägagångssätt för anpassning, montering och integrering av flera domänspecifika språk (DSL) specifikationer och implementationer.Det hjälper till att hantera variabilitet inom språkspecifikationer (syntaktiska och semantiska variationspunkter) och återanvända delar av syntax och semantik från en DSL till en annan.Språkbänken inbäddar ett modellorienterat typsystem som ger modellpolymorfism och språkersättningsbarhet, dvs möjligheten att manipulera en modell genom olika gränssnitt och att definiera generiska transformationer som kan åberopas på modeller skrivna med olika DSL: er.Melange tillhandahåller också ett dedikerat metaspråk där modeller är förstklassiga medborgare och språk används för att instansera och manipulera dem.I analogi med det klassbaserade, objektorienterade paradigmet kan Melange klassificeras som ett språkbaserat, modellorienterat språk .... Melange är tätt integrerat med Eclipse Modelling Framework ekosystem och förlitar sig på Ecore metaspråk fördefinitionen av den abstrakta syntaxen för DSL: er.Operativ semantik definieras med hjälp av K3-metaspråket i form av aspekter som är statiskt vävda i språkets syntax.Designers kan således enkelt utforma en tolk för sin DSL på ett icke-påträngande sätt.Melange ingår som en uppsättning av Eclipse plug-ins.Se installationsinstruktionerna för mer information.
the-melange-language-workbench