Slashdot Mirror


Microsoft Roslyn: Reinventing the Compiler As We Know It

snydeq writes "Fatal Exception's Neil McAllister sees Microsoft's Project Roslyn potentially reinventing how we view compilers and compiled languages. 'Roslyn is a complete reengineering of Microsoft's .NET compiler toolchain in a new way, such that each phase of the code compilation process is exposed as a service that can be consumed by other applications,' McAllister writes. 'The most obvious advantage of this kind of "deconstructed" compiler is that it allows the entire compile-execute process to be invoked from within .NET applications. With the Roslyn technology, C# may still be a compiled language, but it effectively gains all the flexibility and expressiveness that dynamic languages such as Python and Ruby have to offer.'"

1 of 195 comments (clear)

  1. Re:3 years ago by sourcerror · · Score: 4, Insightful

    Tiny C compiler does this for years:
    http://bellard.org/tcc/

    Features

    SMALL! You can compile and execute C code everywhere, for example on rescue disks (about 100KB for x86 TCC executable, including C preprocessor, C compiler, assembler and linker).

    FAST! tcc generates x86 code. No byte code overhead. Compile, assemble and link several times faster than GCC.

    UNLIMITED! Any C dynamic library can be used directly. TCC is heading torward full ISOC99 compliance. TCC can of course compile itself.

    SAFE! tcc includes an optional memory and bound checker. Bound checked code can be mixed freely with standard code.
    Compile and execute C source directly. No linking or assembly necessary. Full C preprocessor and GNU-like assembler included.

    C script supported : just add '#!/usr/local/bin/tcc -run' at the first line of your C source, and execute it directly from the command line.

    With libtcc, you can use TCC as a backend for dynamic code generation.