Open MeAmAnUsername opened 4 years ago
Use case: #18 and #47 would simplify
func ... = {
...
val cppPerAlgorithm = [compileIrToDistCpp(ir) | ir <- algorithms];
...
}
func compileIrToDistCpp(ir: spoofax:IStrategoTerm) -> string = {
val compiled = oracle:distir:spoofax:task:compileIrToDist(ir);
val result = oracle:cpp:spoofax:task:prettyPrintAst(compiled);
result
}
to
import oracle:distir:spoofax:task:compileIrToDist as compileToDist
import oracle:cpp:spoofax:task:prettyPrintAst as printCpp
func ... = {
...
val cppPerAlgorithm = [printCpp(compileToDist(ir)) | ir <- algorithms];
...
}
Allow more things with imports. This would increase the ergonomics of the language as it removes some common annoyances
spoofax:invokeStrategoStrategy
everywhere)spoofax:IStrategoTerm
everywhere)sub issues