JSILJSIL is a compiler that transforms .NET applications and libraries from their native executable format - CIL bytecode - into standards-compliant, cross-browser JavaScript. You can take this JavaScript and run it in a web browser or any other modern JavaScript runtime. Unlike other cross-compiler tools targeting JavaScript, JSIL produces easy-to-debug JavaScript while still maintaining the behavior and structure of the original .NET code. Because JSIL transforms bytecode, it can support most .NET-based languages - C# to JavaScript and VB.NET to JavaScript work right out of the box, and F# is partially supported. Nearly the entire feature set of the .NET runtime (including pointers and P/Invoke) is supported, and most of the open-source BCL is translatable by the compiler.