Click here to Skip to main content
15,903,175 members

Welcome to the Lounge

   

For discussing anything related to a software developer's life but is not for programming questions. Got a programming question?

The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.

 
GeneralRe: Little things that irritate the heck out of me - #1 Pin
obermd14-Jan-24 8:13
obermd14-Jan-24 8:13 
GeneralRe: Little things that irritate the heck out of me - #1 Pin
jmaida14-Jan-24 13:20
jmaida14-Jan-24 13:20 
GeneralRe: Little things that irritate the heck out of me - #1 Pin
jschell15-Jan-24 5:05
jschell15-Jan-24 5:05 
GeneralRe: Little things that irritate the heck out of me - #1 Pin
jmaida15-Jan-24 11:57
jmaida15-Jan-24 11:57 
GeneralRe: Little things that irritate the heck out of me - #1 Pin
trønderen15-Jan-24 12:37
trønderen15-Jan-24 12:37 
GeneralRe: Little things that irritate the heck out of me - #1 Pin
jmaida15-Jan-24 13:13
jmaida15-Jan-24 13:13 
GeneralRe: Little things that irritate the heck out of me - #1 Pin
BernardIE531715-Jan-24 5:16
BernardIE531715-Jan-24 5:16 
General.NET growing pains Pin
honey the codewitch13-Jan-24 14:43
mvahoney the codewitch13-Jan-24 14:43 
Update: Thanks to Daniel asking me just the right question I figured out a way to hack my way around the lack of Span/ReadOnlySpan with Deslang by making a dummy with the same name and some appropriate stub methods. I don't actually use that code directly, but my Deslang engine does when it needs to resolve System.ReadOnlySpan<char> which again, it must do under the .NET Framework where that type doesn't otherwise exist. Deslang just needed to eat. Roll eyes | :rolleyes:

So I'm still going to target the DNF. I may also provide a roslyn generator based alternative to using the codedom but it seems it's a bit of a learning curve, and more work given the tools I already have for CodeDOM stuff, like Deslang. Also it may require the end user to have more microsoft fluff installed and running in order to use it, so all that is something I need to run down. Progress!
_____________________________________________________________________________________

I don't know whether to target .NET Framework with my FA library anymore.

The issue is that you don't have spans in DNF, and now my regex stuff uses it to keep up with Microsoft's engine (which does the same thing)

This created a snowball of issues. For starters, I use a tool called Deslang to turn a subset of C# into a generic Abstract Syntax Tree that can be rendered into C#, VB.NET, or something else. I use this tool to prepackage shared code that I want to "generate" for the user in any language they specified.

The issue with building the AST directly is it's very verbose, taking a solid paragraph of code to declare a local variable. Deslang does it for me and produces code that has that AST already cooked into an object graph.

Deslang uses some reflection magic. And that magic is .NET Framework only. However, it cannot see ReadOnlySpan<char> because it's a span, and those don't exist in the DNF. Dead | X|

Ergo, I cannot generate span code this way.

I'm currently using the codedom and thinking of moving over to the far more modern roslyn services and abandoning DNF altogether.

There's one issue though, and that is that if you were using my code generators to make build tools of your own, you won't be able to make self contained executables anymore because that's a .NET Framework feature only. The other cases have multiple files per assembly which makes their use as build tools a bit uglier. Not insurmountable, but less than ideal.

Still, in order to fully support the .NET framework at this point I'd have to fork my runtime string matcher code and my compiler plus my code generator too, all so I could generate a less performant, .NET Framework friendly alternative. I think this is basically what Microsoft does, but they have staff. I don't.

I really like the .NET Framework. I like Winforms. I like self contained executables. They do run on linux regardless of what microsoft says (except winforms of course) because Mono has supported DNF from the beginning.

I never really understood the need to make several more .NET "kinds", but I guess now that span doesn't work in the DNF I've got some hard choices to make.

Am I just getting old? This all seems like a lot of unnecessary trouble Microsoft made for people.
Check out my IoT graphics library here:
https://honeythecodewitch.com/gfx
And my IoT UI/User Experience library here:
https://honeythecodewitch.com/uix


modified 14-Jan-24 11:22am.

GeneralRe: .NET growing pains Pin
Daniel Pfeffer13-Jan-24 21:20
professionalDaniel Pfeffer13-Jan-24 21:20 
GeneralRe: .NET growing pains Pin
honey the codewitch13-Jan-24 22:26
mvahoney the codewitch13-Jan-24 22:26 
GeneralRe: .NET growing pains Pin
Sander Rossel14-Jan-24 23:40
professionalSander Rossel14-Jan-24 23:40 
GeneralRe: .NET growing pains Pin
honey the codewitch15-Jan-24 2:17
mvahoney the codewitch15-Jan-24 2:17 
GeneralRe: .NET growing pains Pin
Sander Rossel15-Jan-24 4:44
professionalSander Rossel15-Jan-24 4:44 
GeneralRe: .NET growing pains Pin
honey the codewitch15-Jan-24 4:47
mvahoney the codewitch15-Jan-24 4:47 
GeneralRe: .NET growing pains Pin
jschell15-Jan-24 5:34
jschell15-Jan-24 5:34 
GeneralRe: .NET growing pains Pin
honey the codewitch15-Jan-24 5:36
mvahoney the codewitch15-Jan-24 5:36 
GeneralWordle 939 Pin
StarNamer@work13-Jan-24 13:05
professionalStarNamer@work13-Jan-24 13:05 
GeneralRe: Wordle 939 Pin
Amarnath S13-Jan-24 13:16
professionalAmarnath S13-Jan-24 13:16 
GeneralRe: Wordle 939 Pin
Sandeep Mewara13-Jan-24 16:56
mveSandeep Mewara13-Jan-24 16:56 
GeneralRe: Wordle 939 Pin
OriginalGriff13-Jan-24 19:54
mveOriginalGriff13-Jan-24 19:54 
GeneralRe: Wordle 939 Pin
Cp-Coder14-Jan-24 1:25
Cp-Coder14-Jan-24 1:25 
Generalshort joke Pin
Salvatore Terress13-Jan-24 7:58
Salvatore Terress13-Jan-24 7:58 
GeneralRe: short joke Pin
Ștefan-Mihai MOGA13-Jan-24 8:03
professionalȘtefan-Mihai MOGA13-Jan-24 8:03 
GeneralRe: short joke Pin
kmoorevs13-Jan-24 8:07
kmoorevs13-Jan-24 8:07 
GeneralRe: short joke Pin
Ștefan-Mihai MOGA13-Jan-24 8:13
professionalȘtefan-Mihai MOGA13-Jan-24 8:13 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.