Feeds

back to article Microsoft now using next-gen Roslyn C#, Visual Basic compilers in house

After more than a year of silence on the subject, Microsoft's Managed Languages team is once again talking about Roslyn, the radically redesigned version of its C# and Visual Basic compilers. We first heard about Roslyn – described as Redmond's "compiler as a service" project – way back at the Build developer conference in 2011 …

COMMENTS

This topic is closed for new posts.
Bronze badge

so its quicker then visual studio to find the c++ you need to use to convert a int to CString.Format( "%s" ), and all other c++ you need to use visual c++

0
5
Silver badge

Several minus points to MS for the term "dogfooding".

5
13
Bronze badge

re: Several minus points to MS for the term "dogfooding".

Gertz wrote. "In fact, the daily builds of VS are now compiled using Roslyn, all as part of a process that we refer to in the biz as 'dogfooding.'"

My immediate reaction was to search the web to discover if humans can actually eat dog food. Probably not the kind of interest the comment was meant to inspire. Oh yes, I'll also throw him some demerits for verbing an arbitrary noun.

2
8
Anonymous Coward

Re: re: Several minus points to MS for the term "dogfooding".

What gives? Dogfooding has been familiar terminology for many years. Don't get the objection.

14
2
Silver badge

Re: re: Several minus points to MS for the term "dogfooding".

but i dont like dogs

4
1
Silver badge

Re: re: Several minus points to MS for the term "dogfooding".

Fortunately it seems to have passed me by until now. "Eating your own dogfood" is fine and has been around for some time, but converting nouns to verbs I find irritating. The language may evolve, but I'm going to sit here and be a Neanderthal.

4
0
Bronze badge

Re: re: Several minus points to MS for the term "dogfooding".

So to clear this up... people can eat dog food?

1
0
Anonymous Coward

You must have missed District 9?

0
0
Thumb Up

This is amazing. The C# compiler is written in C#! Amazing. And you can create a "read-evaluate-print-loop" (REPL)? I'll have to reearch REPL more, as I have never heard of it before. And syntax highlighting of C# can now be done with the C# compiler, rather than emulated via C++? Staggering. Microsoft has rocked the computer language world to the core today.

11
13
Bronze badge

more amazing is anybody using .NET, its the crapest framework ever, and every executable is 2.3mb after a release build even if it has no code in

5
16
Def
Bronze badge
Facepalm

Yeah, it's so annoying we need to resort to using libraries like Dos/4G just to fit our executables in memory these days.

7
0
Bronze badge

RE: Microsoft has rocked the computer language world to the core today.

I can't tell if you are being serious or sarcastic. The icon suggests you are serious, but I do hope not. Hardly rocked anyone's cores, simply caught up with the rest of the world a little, still a long way to go.

1
0

>>more amazing is anybody using .NET, its the crapest framework ever, and every executable is 2.3mb after a release build even if it has no code in

I just did a test with a "Hello, World" executable, and it was 5K in size...

4
0
Bronze badge

RE: I just did a test with a "Hello, World" executable, and it was 5K in size

I managed to optimize it a bit, got down to 4.997K by just printing Hi, World

3
0
Bronze badge

in a console window, not a full exe with dialog and a error prompt message, and default resource files, which then includes all the junk needed to load the program instead of having it all in the .NET framework that makes your windows install all crunchy and slow, like all programs written in .NET themselves

windows is better without anything todo .NET installed

2
1
Bronze badge

Of course it did, things like that end up being awfully bloated and slow with pretty much any kind of framework - because it isn't the kind of thing the framework is built to support. For more realistic apps, the difference drops significantly.

But since Rosyln can compile C# right down to native code (even as far as stripping out dependencies on the .NET framework libraries) and does things like whole program optimization (something the existing JIT compilers don't), you may well find it reduces your "Hello World" to something surprisingly small.

0
0
Anonymous Coward

".NET, its the crapest framework ever"

You obviously haven't ever used Java....

4
2
Anonymous Coward

".NET framework that makes your windows install all crunchy and slow, like all programs written in .NET themselves"

.Net doesn't effect Windows performance itself at all once installed - and .Net itself is faster than pretty much any similar solution. 17 x faster than Java on this mathematical function for instance:

http://fsharpnews.blogspot.co.uk/2010/05/java-vs-f.html

0
1
Def
Bronze badge

Re: RE: I just did a test with a "Hello, World" executable, and it was 5K in size

Back in the days of Visual Studio '97, I tried to see how small I could get an executable. My target execuable needed to create a window, initialise a fullscreen DirectX (DirectDraw back then) application, and sit clearing the screen to a random colour until the user hit escape, at which point it was to clean up and exit. The code had to be standard C or C++, and compile with Visual Studio.

If I remember correctly, the smallest I could get it was 729 bytes, and 512 bytes of that was the PE header. Visual Studio 6 added another kilobyte of header, and sizes have just ballooned since then. I wouldn't dare try and do the same these days.

0
0
Angel

Re: RE: I just did a test with a "Hello, World" executable, and it was 5K in size

Quick! Embed it in a web page and enter the 5k contest [the5k.org] ...

Oh wait. Seems they don't run that anymore. Perhaps, no one cares how much bandwidth programs take. Never mind, let me have a go...

echo "Hello, World"

Wow, 21 bytes

0
0
Silver badge

So amazing that Delphi has been writen in Delphi since v1 back in 1995. Nice to see MS catching up some 18 years later. One day Visual Studio may actually be feature comparable with the Delphi IDE.

0
0
Bronze badge

.NET might be good for code faster then java and quick console applications, but its a complete waste of time for proper applications with GUI frontends, like 3d model editing, or webcam programs, notepads, etc etc

every application sound like your drive is just about to die when a .NET application starts to load, and then takes another 30-40seconds to actually load

stick to making visual c++ better, you can just use pure c++ when you want

0
1
Bronze badge

.NET C# had a year in the world of freeware applications when .NET first came along, but then it died quickly

0
1
Anonymous Coward

"but its a complete waste of time for proper applications with GUI frontends, like 3d model editing, or webcam programs, notepads, etc etc"

.Net is fine for all of those things, and the vast majority of those sort of programs are written using .Net these days.

"every application sound like your drive is just about to die when a .NET application starts to load, and then takes another 30-40seconds to actually load"

Sounds like you have something wrong with your computer. I don't see that issue with .Net appllciations. there was such an issue fixed years ago: http://support.microsoft.com/kb/318738/en-gb

"stick to making visual c++ better, you can just use pure c++ when you want"

C++ might be a buit faster, but also a lot harder to use....

0
0
Bronze badge

visuall c++ has 90% of the same classes as .NET, there are plenty of sites with code snippets on to use in your own program and on MSDN

there is no encryption class or obvious way to do binary protocols, the rest is easy with the object droplists as you type in VS

.NET is just alot slower and has bigger build filesizes

0
1
Bronze badge

RE: 17 x faster than Java

http://fsharpnews.blogspot.co.uk/2010/05/java-vs-f.html

Does not provide any evidence at all to support .net is faster than java. It compares two programs that are biased to F# as the java program is poorly written.

0
0
Silver badge

.Net Framework makes development go 10x faster (at least) than C++. Higher level of abstraction. C++ requires more fiddling, more lines of code to do anything.

0
1
Bronze badge

So amazing that Delphi has been writen in Delphi since v1 back in 1995. Nice to see MS catching up some 18 years later.

18? Self-hosted compilers have been around since the early '60s. Even Visual Basic.NET has had a self-hosted compiler since 2008 - just not from Microsoft. The Mono vbmc compiler was rewritten in VB.NET for the 2.6 release.

So no, this isn't news. But it wasn't news in 1995 either.

0
0
Anonymous Coward

About as stupid as ...

... disallowing C# private functions to be virtual.

so you can't implement the Template pattern without exposing you internals.

0
7
Silver badge

Re: About as stupid as ...

You do realise all those programming 'paradigms' that go in and out of fashion every ten minutes are just some random tosser's opinion, right? There's no law engraved in stone that requires all programming languages to support every damned fashion under the sun.

That's the mistake C++ made: it's trying to be all things to all programmers, and fails quite spectacularly at doing the one thing that is required of all programming languages: to be human-readable.

No CPU I've ever used gives a flying toss about templates, classes, lambdas, etc.; OOP, Functional Programming, and so on, are all just so much structural scaffolding that is frequently so poorly designed that it gets in the way of the code itself. Such scaffolding has no place in the programming language itself and should have been shifted into the IDE UIs, where it belongs, a long time ago.

14
2
Stop

Re: About as stupid as ...

Upvoted your first two paragraphs, but 'classes' have no place in the language? Really?

0
0
Bronze badge

Re: About as stupid as ... @ Sean Timarco Baggaley

> No CPU I've ever used gives a flying toss about ..., classes, ..., ....; OOP, ...

Well neither have I but fyi

"Rekursiv was a computer processor designed by David M. Harland in the mid-1980s for Linn Smart Computing in Glasgow, Scotland. It was one of the few computer architectures intended to implement object-oriented concepts directly in hardware. The Rekursiv operated directly on objects rather than bits, nibbles, bytes and words. Virtual memory was used as a persistent object store and unusually, the processor instruction set supported recursion (hence the name)."

<https://en.wikipedia.org/wiki/Rekursiv>

I'd not be surprised if there existed chips that did functional stuff at a level that looked like it was on hardware at the machine code level.

As for

> Such scaffolding has no place in the programming language itself

I'm not sure exactly what you're suggesting but I think you're wrong. Be careful what you wish for at any rate.

--- yay for edits! ---

forgot this one too <http://en.wikipedia.org/wiki/Intel_iAPX_432>. Which was apparently designed by idiots BTW.

0
0

Hmmm...

Give me a Z80 instead of .net, :)

0
0
Gold badge
Unhappy

YAPL Yet Another Proprietary Language from the people who gave you...

Enfold, Extend, Extinguish.

I find myself strangely uninterested in following up this.

And Read-Evaluate_Print loop?

That's LISP, as anyone who knows how to do real software development would know.

0
1
Anonymous Coward

Re: YAPL Yet Another Proprietary Language from the people who gave you...

C# works perfectly well in .Net. Last time I checked it was an ECMA and ISO standard....

1
2
Gold badge
Unhappy

@AC

"Last time I checked it was an ECMA and ISO standard...."

Just like the "standards" for MS Office file formats?

That's good to know.

0
1
Anonymous Coward

Re: @AC

"Just like the "standards" for MS Office file formats?"

Quite - except OOXML is an IEC standard too.

0
0
Gold badge
Unhappy

Re: @AC

"Quite - except OOXML is an IEC standard too."

Exactly.

Which Microsoft gamed the system to get included.

Standards are things you can duplicate without help or advice from the original proposer.

0
0
This topic is closed for new posts.