Live data from Hacker News

A glimpse into a new programming language under development at Microsoft

lambda-the-ultimate.org

161–170 of 230 posts

Re: A glimpse into a new programming language under development at Microsoft

#161
> Part of what my team does is regularly convert C# programs to this new language, and it’s not uncommon for us to encounter 30-50% time spent in GC. For servers, this kills throughput

I think a lot of money in computer technology is made off of the cluelessness of application programmers. Then again, sometimes "cluelessness" = "schlepping" = opportunity. Azul systems Zing JVM is an example of this. Instead of arcane tuning, architecture, and optimization, you just put in a pauseless GC VM.

ARC with Objective-C shows that one can have automated deterministic memory management that's not only workable in practice, it works about as well as GC. That is, 90% of the time, with gotchas for application programmers not paying enough attention the other 10%. A functional language should enable a "just works" percentage even higher than 90%.

Re: A glimpse into a new programming language under development at Microsoft

#162

I just hope it's not so heavily tied to an IDE. One of the things I really enjoy about using Go and Ruby is that I can use whatever the heck I want to write code. C# was my first language learning and it took a while to shake off the notion that "everything must be done with an IDE".

I couldn't agree more. That said, I think hidden in your last sentence is the fact that working with C# in an IDE with a statically typed language is such a pleasure. For most mundane code (loops, linq, if/else), Resharper will literally autocomplete everything. I really wish other languages offered such tooling at times. I don't think any other language/IDE combo comes close (in my opinion).

Modern Java with IntelliJ is similar.

Re: A glimpse into a new programming language under development at Microsoft

#163
post #31

This is going to be horribly negative so a bit of context first: I'm a professional C# programmer. I love C#, I think it's a great language. But there's a huge downside: C# only works on Windows. This vastly reduces the number of things you can do with it (yeah, I know about Mono). There's nothing here that suggests that this would have anything other than the same restrictions. So, assuming the language develops int…

I think MS has finally realised that they no longer have monopol. Have a look at F# totally open source and work well on Linux. TypeScript is distributed with npm.

Re: A glimpse into a new programming language under development at Microsoft

#164

I am quite disturbed by this claim: > It’s commonly claimed that with type-safety comes an inherent loss of performance If we've learned anything, it's that type safety buys you performance because it enables a lot of compiler optimizations that are not possible in dynamically typed languages. Other than that, the language sounds very interesting but if it's going to be Windows only, it will suffer the same fate as C…

I assumed he meant safety in the general sense or memory safety specifically. Things like array bounds checks, dynamic cast failures throwing exceptions, etc.

But he said type safety, which is entirely compile time and allows you to avoid run time checks, making it faster not slower.

Re: A glimpse into a new programming language under development at Microsoft

#165

Earlier quoted context omitted.

C# only works on Windows. This vastly reduces the number of things you can do with it (yeah, I know about Mono). Speaking of Mono, does anyone know of a good resource for C#/.NET devs to learn how to port their Windows apps to Linux/Mac relatively easily? I did a writeup a month ago about my first impressions of Mono: https://news.ycombinator.com/item?id=6744622 In short, there don't seem to be very many "Here's how…

I have been building GUI applications with Java and Swing for some time. I am willing to go on-the-record and state that Swing provides a reliable and thorough cross-platform GUI toolkit. Once you put the work in, you really can build an application that looks native-ish and does the same thing on Windows, Linux/GTK and Mac OSX. Unfortunately the learning curve is quite steep, many things are more complicated then th…

>I have been building GUI applications with Java and Swing for some time. I am willing to go on-the-record and state that Swing provides a reliable and thorough cross-platform GUI toolkit.

Swing is used by two kinds of people: developers, because the tools that use it are just too good to go elsewhere (IntelliJ etc) and enterprise users that have it forced upon them.

I don't think anybody is using Swing willingly -- or enjoying it. Besides the "uncanny valley" effect to native widgets, it suffered from the start from the main negative of Java's culture: it was overengineered. On top, it underdelivers in many areas.

Re: A glimpse into a new programming language under development at Microsoft

#166

I am quite disturbed by this claim: > It’s commonly claimed that with type-safety comes an inherent loss of performance If we've learned anything, it's that type safety buys you performance because it enables a lot of compiler optimizations that are not possible in dynamically typed languages. Other than that, the language sounds very interesting but if it's going to be Windows only, it will suffer the same fate as C…

He's distinguishing between safe and unsafe languages, not between static and dynamic languages. The general mindset is that C++ can be faster than Java because it lets you do unsafe operations like pointer arithmetic and reinterpreting the raw bits from one type of data as another type, while Java requires you to go through (safe) interfaces or disallows those operations altogether.

Re: A glimpse into a new programming language under development at Microsoft

#168
post #23

I'm going to ramble a little below, so I'll get to the point up front: is there even a new language here? I don't mean in the sense that Rust seems to attempt what is being hand waved about in the submission, but that the linked blog post states > I’ve given a few glimpses into this work over the years. In the months to come, I will start sharing more details. My goal is to eventually open source this thing, but... W…

For the record, Charles didn't post it to the home page. I promoted it there, since I thought (correctly, it turns out) that it might be of wide interest. So all the blame for that goes to me.

Re: A glimpse into a new programming language under development at Microsoft

#169

C# might be a great language now, but 1.0 was horrible! It was a painful experience to gain adoption within companies and frameworks on top of it (ASP+ for example) still needed to mature. The world is different now. I predict Microsoft will push NodeJS / JavaScript / HTML5 for application development. I'm assuming this will be targeted towards the Go style community and applications. It has a lot of the same propert…

"NodeJS / JavaScript / HTML5" - more likely to be just another option to satisfy everyone. I would rather move to Scala than use JS for anything other than rich GUI. Who wants to support business logic implemented in JS by an average developer?

Microsoft would never promote Scala as it's a JVM language. NodeJS is likely given the recent relationship with Red Gate and effort surrounding Azure support.

As for business logic by an average developer - I would say the same thing about every language.

Re: A glimpse into a new programming language under development at Microsoft

#170
post #159

Earlier quoted context omitted.

It looks like you have a very narrow perspective on C#. I've never tried running .net on a non-windows platform, so I can't comment in that space. I'll leave that to someone else. As someone who's built bespoke big data applications, scientific computing (if we're both talking about large scale computation for analytics), desktop applications, server applications/services, and web sites (one of which is within the US…

I think you're missing my point, it's about sweet spots. C# has a sweet spot on windows desktop and ETL style data processing. You could have written all of those things in C++, Java or Python. But the ecosystem isn't there. There's no Hadoop, SciPy, Django or Rails. For crying out loud, just running a less compiler on Windows required someone to sit down and rewrite it from scratch. (The node story has improved on w…

>And none of this looks likely to change. Windows has been a second rate development platform for some time now, and Microsoft don't mind.

Says who?

Those of us that use GUI environments not stuck in 70's terminals workflow think otherwise.

Post reply on HN