Browse by Tags

Tagged Content List
  • Blog Post: Some potential language ideas for future versions of VB

    Mads Torgersen recently gave a talk called “ The Future of C# ”, where he described some potential C# ideas that are on the minds of the team at Microsoft. He showed glimpses of a delightful IDE experience that deeply understands your code and that helps with diagnostics and refactorings...
  • Blog Post: What would you like to know about "how we do language design for VB and C#" ?

    On June 6th I'll be speaking at the Norway Developer Conference in Oslo, on the subject "How we do language design at Microsoft (VB/C#)". It will cover topics like how we designed Async, how we run our week-to-week language design process, where we get ideas from, how we recognize and respond to user...
  • Blog Post: Req28: Override events

    [This post is part of a series, " wish-list for future versions of VB "] IDEA: Allow you to override an event. This idea requires some explanation. Currently, both VB and C# allow you define events in interfaces, and implement them: Interface I1 Event e As Action End Interface Class...
  • Blog Post: Req27: Allow query syntax in For Each

    [This post is part of a series, " wish-list for future versions of VB "] IDEA: Allow "For Each x In collection Where x>10", and other query expressions. We should allow this kind of code: For Each x In collection Where x > 5 Currently we're forced to use awkward workarounds: ...
  • Blog Post: Req26: allow With as a modifier on expressions

    [This post is part of a series, " wish-list for future versions of VB "] IDEA: We should allow "With" as a modifier on expressions. Currently the "With" object-initializer syntax is only allowed on constructors, e.g. Dim x = New S With {.p = 1, .q = 2} This is rather limiting. It would be...
  • Blog Post: Req25: With and From should be allowed together

    [This post is part of a series, " wish-list for future versions of VB "] IDEA: With and From should be allowed together. It's just a silly oversight that they're not. For example, we should allow this: Dim x As New List ( Of Integer ) With {.Capacity = 10} From {1, 2, 3} Provisional evaluation...
  • Blog Post: Req24: warnings where "Nothing" isn't null

    [This post is part of a series, " wish-list for future versions of VB "] IDEA: Emit a warning where "Nothing" is used in a likely-incorrect way. 99% of users think that "Nothing" means the same as C#'s "null", i.e. a null reference or empty nullable -- but it isn't . Nothing is instead the same...
  • Blog Post: Req23: Make more keywords contextual

    [This post is part of a series, " wish-list for future versions of VB "] IDEA: Make more keywords contextual, rather than reserved. At the moment lots of words like "Event" and "Next" and "AddHandler" are reserved keywords. If you want to have variables or methods with these names then you have...
  • Blog Post: Req21: Allow unambiguous types from ambiguous namespaces

    [This post is part of a series, " wish-list for future versions of VB "] IDEA: Allow unambiguous types from ambiguous namespaces. This request arises from VB's powerful "import" feature, which is more flexible than that of C#, but which introduces problems. I'll explain by example: Dim x As...
  • Blog Post: Req20: Range expressions

    [This post is part of a series, " wish-list for future versions of VB "] IDEA 1: Allow range expressions as a literal for IEnumerable. For instance, ' This expression Dim x = 5 To 14 ' should be syntactic sugar for this one Dim x = Enumerable .Range(5, 10) IDEA 2: Allow "in...
  • Blog Post: Req19: Allow statements to start with parentheses

    [This post is part of a series, " wish-list for future versions of VB "] IDEA: Allow statements to start with parentheses. Currently, every statement in VB must start with either an identifier or a keyword. We should allow statements to start with arbitrary expressions. At the very least, starting...
  • Blog Post: Req17: Define extension methods in an "extension class" of the extended type

    [This post is part of a series, " wish-list for future versions of VB "] IDEA: Allow extension methods to be defined in their "extension class". It would look like this: Dim x = "hello" x.LogToDisk() ' extension method defined on strings Dim y = x.p ' extension property defined on strings...
  • Blog Post: Req16: Modules that don't auto-import their contents; extension methods in classes.

    [This post is part of a series, " wish-list for future versions of VB "] IDEA 1: Shared Classes. We should allow "Shared Classes". Their members are all implicitly shared (like a Module), they can't be instantiated (like a Module), but their contents won't be auto-imported: f1() ' allowed ...
  • Blog Post: Req15: GetType for instances, methods and properties

    [This post is part of a series, " wish-list for future versions of VB "] IDEA: GetType should work on instances. ' Currently we can get the System.Type of a named type Dim t As Type = GetType ( IEnumerable ( Of )) ' We'd also like to get the compile-time System.Type of a given expression...
  • Blog Post: Req14: Non-empty default partial methods

    [This post is part of a series, " wish-list for future versions of VB "] IDEA: Allow a non-empty default partial method. (This suggestion from Bill McCarthy ). For instance, Partial Class C Partial Private Sub f( ByVal s As String ) Console .WriteLine( "default body - {0}" , s) End...
  • Blog Post: Req13: Catches in Using blocks

    [This post is part of a series, " wish-list for future versions of VB "] IDEA: Allow Catch statements in Using blocks. A Using block is just a Try/Finally block that calls "Dispose" in its destructor. It'd be handy if you could stick "Catch" statements inside the Using block as well. In other words...
  • Blog Post: Req12: Select Case on object identity and type

    [This post is part of a series, " wish-list for future versions of VB "] VB already has a powerful "Select Cast" statement, e.g. Select Case x Case Is = 1 Console .WriteLine( "x is equal to 1" ) Case Is > 7 Console .WriteLine( "x is greater than 7" ) Case 2 To 4 Console...
  • Blog Post: Req11: International date literals

    [This post is part of a series, " wish-list for future versions of VB "] IDEA: Allow date literals in a subset of ISO8601 format , e.g. #2010-01-26# or #2010-01-26T21:16Z#. (Currently VB only allows the US-specific form #MM/dd/yyyy#). Pretty-listing would leave dates in the format in which they...
  • Blog Post: Req10: share variables in method bodies

    [This post is part of a series, " wish-list for future versions of VB "] VB's "static variables" are a powerful and useful time-saver. They declare a variable with a one-off initialization which is shared amongst all invocations of a instance's method. For example, here's how you might declare...
  • Blog Post: Req9: allow CObj in constants and attributes

    [This post is part of a series, " wish-list for future versions of VB "] IDEA: Allow a CObj in constants and attributes. Currently it's not allowed, for instance, to write Const x As Object = CObj("hello") or to pass CObj(1) into an attribute, Both should be allowed. This request comes from...
  • Blog Post: Req8: Use [ ] for arrays

    [This post is part of a series, " wish-list for future versions of VB "] IDEA: Use [ ] for arrays. This suggestion came from Bill McCarthy. He writes that it's hard to tell the difference between array-indexing and other uses of parentheses. We could allow [] for arrays, or have some other visual...
  • Blog Post: Req7: Have separate syntax for assignment "=" and comparison "=="

    [This post is part of a series, " wish-list for future versions of VB "] IDEA: Have different syntax for assignment "=" or ":=", versus comparison "==". Currently "=" is used for both. Bill McCarthy writes, "To determine which one it means, you have to look at not just the operands but the context...
  • Blog Post: Req6: Better casting

    [This post is part of a series, " wish-list for future versions of VB "] IDEA: Casts should flow from left to right. Here are some candidate syntaxes: Dim x1 = ( HtmlPage .Document.GetElementsByTagName( "a" ).First As HtmlElement ).Children(0) As HtmlElement Dim x2 = HtmlPage .Document...
  • Blog Post: Req5: unsafe and pointer support

    [This post is part of a series, " wish-list for future versions of VB "] IDEA: "unsafe" and pointer support. VB should support unsafe programming, like C#, with pointers and all that. SCENARIO: Pointer support is useful for people who write marshallers and operating systems and device-drivers...
  • Blog Post: Req3: multiline strings

    [This post is part of a series, " wish-list for future versions of VB ". Just to note, I've been reading everyone's comments -- thank you everyone for the feedback -- but I want to finish putting up the entire list before I get round to responding.] IDEA: Multiline strings . VB should allow multiline...
Page 1 of 2 (49 items) 12