Does Roslin include or potentially allow multiple langugage projects?

The current .Net compilers are completely separate. Roslyn is supposed to bundle them into one compiler. Does anyone know if this could introduce the ability to have multiple languages โ€‹โ€‹in one project? Or even possibly in a single file / class?

The best you can do at the moment is to have multiple projects in a solution, but I'd really love to see multiple languages โ€‹โ€‹in one project, and I hope Roslyn can eventually lead to this.

+3


source to share


1 answer


The answer is no. We considered this possible requirement when we started the Roslyn project and decided it was out of scope. Roslyn C # and VB compilers contain a lot of code, but they are separate compilers. Symbol table models are separate. For a symbol representing a class in C #, symbol.Members ("x") returns all members named lower-case x. The same method in the VB symbol table model returns all members named lower-case x AND all members named upper-case x.



We could design the "Members" method to take an additional parameter that says whether the search should be case-specific or case-independent, but we didn't. The C # symbol table contains the internal data required by the C # compiler, and the VB symbol table contains the internal data required by the VB compiler and is implemented separately.

+7


source







All Articles