Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Why Roslyn is a Big Deal (joshvarty.wordpress.com)
43 points by Permit on March 10, 2014 | hide | past | favorite | 8 comments


"Most people familiar with Roslyn understand that it marks the first real change in compilers in recent memory." and then goes on to describe llvm...


My (very limited) understanding is that Roslyn is a lot more like clang than llvm.

From comment on Eric Lippert's blog:

* So, is this like LLVM for the CTS/CLR?

Absolutely not. Low-Level Virtual Machine (LLVM) is a tool that takes code in an intermediate form from the semantic analysis of a compiler, optimizes that intermediate form, and then emits optimized machine code. Roslyn takes in C# and VB source code and produces a lexical, syntactic and semantic analysis of it for you, and then emits the code in an intermediate form. The thing in .NET that most closely resembles LLVM is the jitter.

http://blogs.msdn.com/b/ericlippert/archive/2011/10/19/the-r...

Update - A more full response here: http://blogs.msdn.com/b/ericlippert/archive/2011/11/18/why-i...


Also old news in Javaland; I'd nominate Eclipse's ECJ as the great innovator.


Isn't ECJ just an incremental compiler?

As far as I know, there is nothing like Roslyn in Java.


It's interesting to see what doors Roslyn can open for us in the craft of software development. And I'm also really looking forward to seeing some of Bret Victor's ideas implemented [1]

[1] http://ermau.com/making-instant-c-viable-part-1/


Seems pretty cool, and it'll definitely be interesting to see what people will do with it.

However, some parts of this (introspection and modification of ASTs) are already possible in other languages, such as Scala (through the presentation compiler and the macro system) or even Smalltalk (which doesn't have code in text files).


Aaha! So THAT is how they made dotnetfiddle. I've got to get into this.


scriptcs, too: http://scriptcs.net/




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: