-
Notifications
You must be signed in to change notification settings - Fork 64
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
Microsoft.VisualBasic.dll on top of netstandard #44
Comments
This doesn't sound like a VB language issue. Perhaps it belongs in the Roslyn repo? |
Hey @gafter, I asked him to create it here for the time being. It's not going to perfectly fit in either repo but given how the VB runtime interacts with the language I'm comfortable having it here. Whether and how the My namespace works when targeting netstandard, for example, is as much a language decision as it is a library one. Not to mention late-binding (except now I just mentioned it). |
I think we should not port the legacy functionality across. It's time to leave the "old fashioned" VB6 approach behind, and use the .net approach. Especially on dot net core. |
For pure managed (doesn't require P/Invokes, or any other API that is platform-specific) API I don't see a reason not to make them available in .NET Core (assuming the required underlying API is available in .NET Core). IMHO the origin of the API doesn't matter, only its usefulness does. |
Is there a list of what is in, what's not ? |
Is this issue addressed with the expanded surface area of .NET Standard 2.0? |
Thanks for asking. No, the surface area for Microsoft.VisualBasic was not extended (or at least not significantly). |
I'm going to close this, given the news in issue #280 that the corefx team want the VisualBasic dll ported to .NET Core 3. My understanding is that Anthony D Green originally envisaged .NET Core could give VB the possibility of having having a newly designed VisualBasic dll. This new dll would possibly be slimmed down, and certainly be more modern (e.g. async support), compared to the old desktop version of the VisualBasic dll. Regarding being slimmed down, .NET Core has since decided to instead massively expand the API surface. I think that's good for compatibility. A .NET linker now exists, which can be used where slimness matters. Regarding modern API support (e.g. async), I think that's something that could be feasibly designed and added in a separate NuGet package, community maintained. But that should probably be done after the port of the existing VisualBasic dll to .NET Core. |
Thanks @iainnicol I agree with your assessment here. A core tenet of .NET Core 3 is code compatibility (not so with earlier .NET Core versions), so this is a good time to move the VB runtime, then consider changes. |
Split off from https://github.com/dotnet/corefx/issues/14300
The usual Microsoft.VisualBasic DLL exists in .NET Core, but only with a tiny API subset. The API in .NET Core shouldn't be extended. However, I would be interested in a fuller subset of the the DLL which could sit on top of netstandard.
As @AnthonyDGreen writes, we would have to consider
For a start, I presume it would be much easier to leave out the My* namespaces, and also PInvoke heavy code.
The text was updated successfully, but these errors were encountered: