TWC9: VS2013.1 RC 1, ALM VM's, More *.1 RC's, Mads on Future of C# and more

Play TWC9: VS2013.1 RC 1, ALM VM's, More *.1 RC's, Mads on Future of C# and more

The Discussion

  • User profile image

    Aw shucks, thanks Charles and Dan!  Big Smile  Here's to helping beginners since 2004 ... long before it was cool.

  • User profile image

    @Ultrahead: <GregtheGrinch> Your post content was okay, but the blog url "signature", well we have to be careful on stuff like that. Please feel free to post your comment again, but please make your blog reference/signature part of your profile... </GregtheGrinch>

  • User profile image

    Ok, as I was saying regarding C# 6, upcoming features are great, but I'd love to see also implemented in the near future:

    • Extension properties,
    • Enum constraints for generics,
    • A numeric-value-type base class (for structs/primitives), and
    • SIMD.
  • User profile image

    @Ultrahead: You rock... thank you. Smiley

  • User profile image

    Thanks, U2.

  • User profile image

    I would like to see the following features in next version of the .net languages, as well as an improved CLR.

    • Units Of Measure at the CLR level. Doubles and Integers.
    • - 64bit
    • - SIMD support
    • - GPUCPU support
    • - Tail Recursion Elimination.
    •   - With IDE suggestions for possible rewriting to enable it.
    • A way to pass the Iterator (or indicate) that the function is recursive, so reuse/share the existing iterator so you can Yield result on to it.. 
    •  - Eg IEnumerable over a Tree like data structures.
    • Extend XML Literals to so you can write XAML.
    •  - Could this be an Attribute that this is XAML not XML. 
    • Additional Literals
    • - Tuple Literals @{ "Hello World!", "A"c, 1.0, 12 }  ==> Tuple<String, Char, Double, Int>
    • - TypeSafe and Compile-Checking of String Interpolation @$("Name:- {.Name} Age { .Age } " )
    • - Complex Numbers   10i-2
    • - BigNumber   12344242244144..._Z
    • - BigDecimal   ...1223.23323232333..._R   (BigDecimal extends BigNumber into Real Numbers by remember where the decimal point should be, and takes it into account.)
    • - JSON Literal      JSON_{ "firstName": "John"}
    •   - LINQ to JSON
    • Inherited Constructors 
    • Remove the restriction on operators
    • - Extended the range of allowed characters or custom operators.
    • - eg mathematical symbols. 
    • - Ability to specify if Unitary Operator is PreFix or PostFix.
    • - Independant "Comparision" operators, so you don't requiring the complimenting op
    • - Interface Operators. 
    • Extended Generics 
    • - Isn't type 
    •   Eg Where T <> Integer 
    • -  To include Method Type Signatures. Implement Operators 
    •   Eg Implements 
    •          Operator +(  _  : T,  _ :  T ) : T
    •          Operator -( _ : T, _ : T ) : T
    •          ReadOnly Property Unit : T
    •          ReadOnly Property Zero : T
    •   Which would allow a form a generics for mathematics 
    •   Mathematics Attributes
    •   - Associativity
    •  - Etc
    • Additional Item Templates
    • - Exception
    • - EventArgs
    • VS code snippets into a toolbox, alongside the Editor window (since you can already drag and drop highlight code into one)
    • - I think it would be especially useful for the Express Editions, which tends to be less professional coders. It be more visible that it does have snippet / sample code.
  • User profile image

    Charles / Erik,

    I'm not quite sure that energy is a side effect of "itself" and more interestingly, I finally have a opinion.  The quality of energy drops along the way through entropy decay.  How about life?

    There is some minor debate on the boot strapping of biological life.  Somewhere, but probably earth, molecular cooperation forming a replicating unit and eventually cellular life [suitable_environment |> cooperation |> life ...].  Cooperation, whilst frequently undervalued, remains a principle force shaping biological life.

    Given right conditions: cooperation |> cooperation ... [branching and scaling in all directions] is clearly a side effect of "itself".

    If Martin Nowak Supercooperators is anything to go by, then a code emulation environment could spawn cooperation that forms its own genetic algorithm that displays anomalies like "the Ant and the Peacock: Helena Cronin", Stephen Jay Gould artefacts "Spandrel in the Basilica" and an optimum for all, James Lovelocks Gaia.

    So it's easy really, just cooperate and code the force ;0)

  • User profile image

    That intro was rich Tongue Out

    And ya know, I've watched the past two episodes of this show only because Charles is present, otherwise I almost never watch "This Week on Channel 9".

  • User profile image

    @HeavensRevenge: Smiley Thanks for watching! (and I was just jabbing you about the ladies comment). I like the Brian-Dan combo best for TWC9. Good humor, smart perspectives and they invented the show (Greg Duncan does the heavy lifting around content, of course). I'll always fill in when needed, as a favor to my friends. I'm looking forward to Brian's return.

    @NodeAtTheEdge: Life is a fine answer. Good thinking! That said, like energy, life is not immune to entropy... Smiley Still, the answers are suitable, at a high level (and the question was lofty to begin with).

  • User profile image

    Great TWC9, thanks. Re: C# 6:

    1) C#/AMP

    2) Structural typing + tuple literals + generic tuple type inference + tuple/generic type return values & tooling

    3) Generic type constraints for sealed classes (expression problem re-re-visited...)

    4) Expression methods

    5) Extension properties

    6) Static interfaces (or some other code contract that works with static methods for APIs etc)

    7) CLR-optimized array "slice" accessors/iterators

    8) C#/CX (or whatever it takes to allow fluid interop with JavaScript/C++ on the DESKTOP)

  • User profile image

    It would be nice to have Assembly.Unload and/or better version of collectible assembles in a future version of C#/.net.
    It will be hard to use new scripting features of c# (e.g. Roslyn) or any complex dynamic compilation in the current version of CLR.
    In current version of CLR long running code which uses Roslyn and/or dynamic compilation gets bigger and bigger over time and the only way to release unused assembles/memory is to unload the whole AppDoman which is not a pleasant experience.

  • User profile image

    Forgot to mention that I'd also like to see for C# 6 a common compiler for C++/C# ... LLVM-like? "Project-N"?

  • User profile image

    I have added a new post on my blog explaining what I'd like to see implemented in future versions of C# ...

Add Your 2 Cents