1. A method for providing the ability to edit source code, comprising: providing an extensible multi-language capable compiler framework; and embedding the framework in a language-independent source code editor, such that the compiler framework can provide the editor with information about a language to be edited.