-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Will MS create a new language, or continue to extand C#? #239
Comments
This sounds like Midori, which was eventually scrapped. |
Quite sure that if it not distinct enough from C# it will be adopted as language feature But if there is breaking change feature they would consider make new language |
In my opinion M# could yet have a space a part for Midori and I don't think that all what they did for Midore could be moved into C# without changing too much is nature:
In some sense one could call M# "C++/CLI without C"... |
I can think of only two cases where a company created a new language and tried hard to make everyone switch to it.
I feel that Microsoft is not going to replace C# with some kind of C#++ as their preferred general purpose programming language with fewer warts in the nearest 10 years or so. They are not going to repeat the VB mistake. |
Even though MS doesn't want to replace C# with M#, it should make M# public at least, and let the next major version of visual studio support M#. |
MS has made probably a dozen other C#-spinoff languages in the past, mostly using C# as the basis for testing other programming theory. Off of the top of my head I can think of Axum, Polyphonic C#, X# and Cω. The good ideas are often distilled and integrated into C# proper. I'd severely doubt that MS would expend the effort to mature any of those projects further to the point where it would be suitable for commercial use. That's a large liability in terms of development and support. It was a pretty big deal that this happened with F#. |
From what I've read one of the key successes for Midori/M# was aggressive iteration. They added a feature, tested it and if it didn't work out, they removed it. Now that C# has picked up great features from a lot of these research languages, I wish that we could reset and redefine C# based on the modern set of desirable features now that we know what works well. We could simplify a lot of language constructs, shrink the compiler and prevent C# turning into C++ with layer after layer of deprecated/old syntax. |
@AlgorithmsAreCool They could do this if they were willing to make breaking changes where it makes sense and use analyzers to attempt to upgrade legacy code to the new language version (a la Swift). The team has even floated this idea several times before, though it's not clear to me why it keeps getting rejected. |
@MgSam Go did something similar with GoFix |
Scalable naming strategy, that 😆 |
My idea is that an eventual M# would not replace C# as F# does not replaced anything, M# could take the role of C++/CLI but without the weird syntax inherited from C/C++. |
@fanoI |
I'm not sure that layering makes sense, C# is multi paradigm and 'competes' in the same space as F# for the most part. But I do think that a more M#/Rust like variant of C# would be very valuable. Performance oriented fiddly features could easily go there and not add even more complexity to C#. |
I proposed a big break in a future version C#. It should still be binary compatible with previous versions btw. It was here- dotnet/roslyn#16103 |
C++ is in dire pain and needs to die. A non-GC offshoot of C# needs to become the new de-facto native language without the misery of header files and declaration order. Time is being lost on difficult development because like a true bureaucracy the C++ committee solves everything but the actual problem. |
@playsomethingsaxman You can say that on any language really, not sure why C++ is in dire pain? I'm following and using it and it works for me so what exactly are the actual problems? I mean I doubt that your own problems are everyone's problem. :) Compilation time, header files and whatnot are problems but isn't part of the work on modules is to make this more manageable? |
As old headers and C compatibility should always be present C++ will never be a safe language to use, modules will be only another thing added to a language that has already a giant syntax! There is space for "safe native code": |
Here's the latest .NET language strategy. |
@jcouv |
According to Joe Duffy's blog(http://joeduffyblog.com/2013/12/27/csharp-for-systems-programming/), MS seems to be developing a new language based on C#. Will this come ture? Or will MS merge the features of the "new" language into C#? If so, when?
The text was updated successfully, but these errors were encountered: