(Maybe) Enhancing `For Each` loops with LINQ


Ever been writing a For Each loop and wanted to tack on a Where, Skip, or Order By clause? Well check out this video of a prototype I wrote that lets you do just that:

But don’t just look at the video! Share! Share this post with any VB developer you can reach who might get a kick out of it. Then go to this GitHub issue and tell everybody what you think. And if you’re really excited, download the fork and play with the prototype yourself!

Why socializing prototypes matters!

Because no matter how brilliant any language designer or team of language designers is they are limited by their own experiences and habits. The most meticulously crafted designs can and have fallen apart when picked up by someone a world away with a slightly different imagination. In the best case, that feature is cut. In the worst case, the wrong feature ships. More eyes looking at it and more hands using it in practical contexts (not clinical samples) for awhile is how you go from an idea that’s cool, to a design that works, to a feature that is actually used.

I’d originally wrote about two more pages of personal experiences from my time on Roslyn of near-misses but I’ve decided to spare you all that. Just trust me—this is crazy important! I’m going to keep looking for more ways to make it easier for as many VB coders as possible to give feedback on ideas in the future, but publicly accessible prototypes and the democratizing power of YouTube is a great first step! Look forward to more videos of other prototypes in the very near future.



P.S. This is my first YouTube video EVER. I know, it sucks, I did everything wrong. That’s OK, I’ll get better. Feel free to leave me feedback about it!

8 thoughts on “(Maybe) Enhancing `For Each` loops with LINQ

  1. I subsrcribed to this blog via some text-based RSS fetcher to have something to read while commuting to work or home by public transport.

    The title was catchy but content inaccessible for me because it’s a video. Might be my personal opinion but videos are one of the least dense sources of information you could possibly use. Immersion via video is much higher (if produced appropriately) but what could be the reason to be immersed into your IDE.


    • That’s a good point. I’m trying to find the right balance between what should be in the video, what should be on the blog, and what should be on GitHub. I totally get that video is not always convenient to absorb, especially if you’re somewhere where you can’t hear. For what it’s worth the YouTube video does include transcripts/captions/subtitles so you can read it without sound but I understand that that’s still less than ideal for your situation. I’d ask that you take a look at the linked GitHub proposal which at least covers the way the feature works in pure text and let me know if that works for you. In the future I’ll try to add some summary content from the video to the post so that readers like you aren’t completely shut out. Thanks for the feedback!


  2. Thanks Anthony for your effort.
    I want to thank you also for your great and simple introduction to VB compiler anatomy (I tried to comment therem but there is a problem).
    I feel sad you didn’t continue those articles.
    Please publish the remaining parts here, or at least give me any docs about VB compiler. I downloaded the source code, but it looks like a maze. Any help will be great.


    • Thanks for asking! I’d wondered if I should revisit that series and am seriously considering continuing it here. I think the video + blog format would be especially useful on that topic since the natural way to “show someone around” the compiler is *visually*. Maybe it’s a topic I’ll get to before summer?


      • Ok, but this video was too dark to see the code. Did you captured the screen with a cam or with some recordinf app? Things will get better with more trials as you said.


      • I used the dark theme. My next video will use the light theme. I’m working on it as we speak!

        Liked by 1 person

  3. Pingback: JSON Aficionados Wanted! | Anthony's blog

Comments are closed.