-
Notifications
You must be signed in to change notification settings - Fork 4.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
Sprint 104 Summary #12974
Comments
Do like this, as it gives the community (well me at least) a sense of progress, |
Plus we can make ourselves laugh at what the mind comes up, when filling the
|
@AdamSpeight2008 fixed spelling and added a new label |
Awesome! ;) |
@AnthonyDGreen
Thanks in advance |
[redacted]. Trolllolololol |
The Interactive Execution Team didn't work on it this sprint. As you can see they spent a lot of time working on [Redacted]
@AnthonyDGreen may need to jump in if I am misunderstanding the question, but this should be support for ValueTuple as described here
I can only refer you to the language feature status page which is what we are trying to get done. Type switch for VB or C# hasn't been completed yet.
Nothing to announce here right now. I'll let you know when we have something concrete to share. Don't want to commit to things until I can guarantee they are going to happen. |
The VB Interactive window just isn't ready yet. I'm not sure what pieces of it are in the public repo but right now it requires a lot of work not just on the IntEx side but also on the compiler side (and probably IDE side) to make the submission chaining semantics work. When last I tested it Imports statements and variable declarations weren't working across multiple submissions. That's not the only work needed but fixing it will require compiler expertise and the compiler team has been pretty heads down on the first batch of language features for VB 15 (and C# 7).
If you're asking whether the tuple expression syntax
TypeCase :) It will be but the idea we have now is that features can be released more often than we have in the past so we're not stressing too much about compromising the design to meet the RTM schedule. TypeCase can show up in a update and we're working on how to get you easy access to early previews. You can see the implementation I've been testing in my fork here: https://github.com/AnthonyDGreen/roslyn/tree/features/vb-typecase That's a very straightforward design/implementation. But one thing we've been very concerned with this release is that TypeCase shouldn't be a stand-alone feature but a special case of a larger feature called pattern matching. The hope was to have a broad pattern matching framework with the type pattern being the first to ship in VB 15 and more complex patterns showing up in previews and updates. The implementation of typecase there isn't a pattern matching implementation, it's a standalone implementation of Select Case on type. So a lot of the guts of the feature would need to change to generalize so we can rapidly prototype and add new patterns through the VB 15 "wave" as we call it. Feel free to clone the repo, pull down the source, build, and run the VisualStudioSetup project to deploy it to an experimental VS hive where you can use the feature and provide feedback. The IDE tooling and debugging and compiling should all be there even if the implementation is a bit short-sighted. Near term I want to make getting features outside of a full VS release or beta a lot easier than syncing and building sources so more people can party on a design before we ship it and it's too late to change.
I've gotten this feedback a lot, over the internet, at conferences, and customer interviews. I've taken the feedback to heart and I'll let you know as soon as we have anything concrete to share. |
What about nuples and womples? Are they still uncertain canditate for tuple featureset? I cant recall firm decision in past design notes |
@AnthonyDGreen Other types in tuples
Type switch (TypeCase)
|
I think you meant "If(..." not "Iif". Iif is just a function and will evaluate both sides even if the condition is false where as the If operator short-circuits. I know we all used Iif for years before but we added in in 2008 for situations like that. I don't think we're doing that this time around. But, if you define a type with a conversion operator from tuple that would work. One thing that's still bothering me is the overlap between the Immediate Window, which does expression evaluation and the Interactive Window, which also does expression evaluation. Keep in mind, you don't have to be debugging to use the Immediate window. If you have a project open you can always type VB expressions and since VS2015 those expressions can include queries and lambda expressions. The Immediate Window is also seeded by default with the startup project context so you can even instantiate types and/or call into methods in your class libraries, hit breakpoints, debug them, EnC, etc. Now, obvious the Interactive window has much better tooling with full IntelliSense and syntax colorization and other niceties. It's waay easier to do multi-line/multi-statement input in the Interactive window. But it doesn't support debugging. Ultimately we imagine there only being one window that maybe has different modes but we're nowhere near the point of merging the two. Could you tell me more about when you'd use Interactive vs when you'd use the Immediate window? |
Well that's not exactly true. The project needs to be compiling and it basically only works if the project is class library. It still works if it is a console application, although opening an extra console. However, if it is an Windows application, such as WPF, it opens the main window and never evaluates the expression. And if you close it, you end up blocking the Immediate window since the evaluation is still "in progress". Because of that, I almost never use Immediate window at design time. On the other hand, as you said it gets the project context and you easily can work with the types you wrote, which is why I almost never use Interactive window at debug time. I use Immediate window to test or use the types I developed and the Interactive window to do expression evaluations, occasionally to run selected code from the project, although the tooling there is a bit lacking. I quite got the idea that there is eventually going to be one window only, but I can't get over the arrow keys working differently. 😕 |
@AnthonyDGreen For Interactive could be great not only to add debug mode, but also do present returned expression's values in the same way as "Watch X" while debugging, where we can expand results into list or use visualizers. |
@vbcodec can you tell me how to get the immediate window to display while NOT debugging? It is not in the View Menu. I have tried in VS Windows Forms and Class Library projects. |
@paul1956 Debug > Windows > Immediate |
Thanks I have been using visual studio since VS-97 and never saw it. Why isn't it under View/Other Windows like everything else? While I'm complaining how about sorting or organizing the list. |
@paul1956 Mostly because all the debug windows are under Debug and it was initially a debugging tool. |
Where it shows up in the menu depends on whether you use the General Settings profile or the Visual Basic settings profile or something else. @miloush, it probably should open a new Command-line window in a Console app so that Console commands work right. So, for instance, typing It works fine for me for WinForms but I can repro the issue you're seeing in WPF. That's a bug. It shouldn't do that. Please file a bug on us to fix. Could you say more about how the arrow key behavior is bothering you? How would you like the arrow keys to work in each window? |
@AnthonyDGreen how do I check/change profiles. I only remember seeing the selection when I created my online account. I use VB, WinForms, ASP AND WPF applications and never change profiles. |
@AnthonyDGreen Interesting point, should I expect Other than that, looks to me like when the Interactive Window gets the project context (and perhaps recognizes ?), they could be merged. |
@miloush In Interactive Window you can hit Ctrl+Enter to append the text of previous submission to the current submission. In general, please file any suggestions for improvements to Interactive Window as separate issues. |
@paul1956 I don't know how you check which profile you're using but you can reset it at any time in Visual Studio under Tools > Import and Export Settings... > Reset settings and then selecting one of our predefined settings profiles. |
https://github.com/dotnet/roslyn/blob/master/docs/features/deconstruction.md |
@vbcodec Dev15 Preview 4 has not been released yet. Whatever is in the https://github.com/dotnet/roslyn/tree/dev15-preview4-df branch will be in it. |
@jmarolf |
VB tuples are in master for two days now. They are not in preview-4 |
Note that you need ValueTuple nuget in your project for tuples to light up. |
It's great to see these Sprint Summaries being shared, even if parts need to be [Redacted] :) |
Finally I was able to compile and run master on VS 2015 Community, and tuples looks and works great. There should be option to exclude ItemX from Intelisense, if name is provided. But there is persisting problem with restoring (restore.cmd) packages on Win 10 Anniversary Update. C:\Users\test\Desktop\roslyn-master\roslyn-master>restore.cmd Changing policy for powershell do not help |
Tag @jaredpar about the powershell issue above. |
Sigh, why is Powershell so hard to run. Let me take a look. |
Visual Basic & C# Compiler Team Accomplishments
F# Team Accomplishments
Interactive Execution Team Accomplishments
Infrastructure Team Accomplishments
Analysis Team Accomplishments
IDE Team Accomplishments
The text was updated successfully, but these errors were encountered: