[a / b / c / d / e / f / g / gif / h / hr / k / m / o / p / r / s / t / u / v / vg / vm / vmg / vr / vrpg / vst / w / wg] [i / ic] [r9k / s4s / vip] [cm / hm / lgbt / y] [3 / aco / adv / an / bant / biz / cgl / ck / co / diy / fa / fit / gd / hc / his / int / jp / lit / mlp / mu / n / news / out / po / pol / pw / qst / sci / soc / sp / tg / toy / trv / tv / vp / vt / wsg / wsr / x / xs] [Settings] [Search] [Mobile] [Home]
Board
Settings Mobile Home
/g/ - Technology

Name
Options
Comment
Verification
4chan Pass users can bypass this verification. [Learn More] [Login]
File
  • Please read the Rules and FAQ before posting.
  • You may highlight syntax and preserve whitespace by using [code] tags.

08/21/20New boards added: /vrpg/, /vmg/, /vst/ and /vm/
05/04/17New trial board added: /bant/ - International/Random
10/04/16New board for 4chan Pass users: /vip/ - Very Important Posts
[Hide] [Show All]


[Advertise on 4chan]


File: Csharp_Logo.png (13 KB, 512x512)
13 KB
13 KB PNG
START WRITING C# NOW.
WE ARE GETTING TAGGED UNIONS WITH EXHAUSTIVE PATTERN MATCHING IN THE NEXT RELEASE

https://devblogs.microsoft.com/dotnet/csharp-15-union-types/
>>
>>108559700
>WE ARE GETTING TAGGED UNIONS WITH EXHAUSTIVE PATTERN MATCHING IN THE NEXT RELEASE
erm, what? data structures + algorithms = programs, not whatever the hell this is
>>
>>108559875
>>
>>108560011
The tagged union is a data structure and the pattern matching is an algorithm
>>
pretty cool. just wish the happy path for c# could end somewhere other than azure ci/cd. everything before that (windows - vs - gh) is such a strong lineup. then its just BRAP azure at the end there
>>
>>108560868
...And you can't just use a non azure server to host your C# program? You can't just make software meant to run locally?
>>
>>108560889
i can, but i like to synergy stack. so using c# without azure is a frustrating prospect. i just wish they would let me provision hardcapped $/m server (no auto scaling, no surprise bills).
>>
>>108559700
Cool now make it possible to write this in VSCode and support it for more than 2.5 years
>>
>>108559700
>Let's make C# like Rust but gayer and with less build targets
>>
>>108560868
Then how would Sloppy Nutella's favorite microslop branch of Microsoft be able to grow and attract investors anon? Think of the lost Izzat from that!
>>
>>108561029
It is... Just like all C# features in the .NET Core branch. Which has been the main branch for 10 years by now! The entire compiler/toolchain/standard library including the new features OP mentionend and their internal design/meeting notes are publically available using the MIT license. You can run a of it on your linux machine using neovim if you want, or emacs or vscodium.

The non-free .NET Framework hasn't recieved any changes for literally years (since 4.8.1).
>>
I want non-exception stack unwinding.
>>
>>108563395
me too but backwards compatibility... :(
>>
>>108559700
I'm sticking to C++17 thanks.
For like the next 100 years.
Seethe.
>>
>>108563349
>toolchain
Nope, the C# extension for VSCode, besides being so bad it's literally unusable, is not only proprietary, but it's also non-free as in non-free beer. You may only use it with a Visual Studio license, which you won't have if your company doesn't pay for it.
Everybody uses VS for C#, and Microsoft really doesn't want that to change.
>>
>>108564432
It’s also not required
>>
>>108559700
F# btfo again
>>
oh boy another episode of OOP midwits reinventing FP from first principles while F# quietly rots in the basement
>>
>>108564432
rider sends his regards
>>
>>108564538
going full fp is retarded
>>
>>108559700
It bothers me when they change shit this often.
I enjoy being a multi-lang chad, feels like I'm omnipotent, allknowing. And they just show up and flip my shit upside down, contribute nothing and walk away.
>>
>>108564542
skill issue
>>
>>108559700
I don't get it, isn't this what polymorphism is for?
Should they not all just implement an interface Pet and have improved the experience of type-checking that?
Or am I missing the point? I've never had a problem which this would solve, though I'm rather strict with my class hierarchy and generics.
>>
>>108564560
unions with pattern matching just killed the visitor design pattern btw.
>>
>>108564560
Nevermind I managed to accidentally skip the center portion where it states a union is a strict set at compile-time. I'll probably still neglect to use it, I haven't even found a good instance to use `record` yet either.
>>
>>108564566
I never did enjoy the visitor pattern but I feel like it doesn't fix the problem of having to update sparse sections of code which do type-checking when classes are added or removed, whether as if the class itself owns the methods it's less sparse (but muddies the intention of the class). Though I'm probably in the minority of people whom think that's a problem.
>>
>>108564541
It's also a proprietary special snowflake program just for this one language that's paid too.
>>
>>108559700
Pattern matching is garbage and shouldn't be in a programming language. You're just asking for undecipherable bugs when your coffee becomes legacy code.

Your programming language needs to stay relatively simple. Once you start adding a million bells and whistles to it it becomes unwieldy.
>>
>>108564759
If you think pattern matching is needlessly complex but not the average OOP codebase, you are either low IQ or have an autistic aversion to any kind of new thing.
>>
>>108564558
>FP is great you just have to not have any external IO!
Yeah thanks for the demoware for hello world
>>
>>108564520
Not for fizzbuzz. I understand /g/ doesn't write anything more complex than that, but if someone does, it is absolutely not enough.
>>
>>108564769
Go throw a novice programmer at OOP vs pattern matching. They will struggle with pattern matching far more than OOP. A decent amount of programmers you work with are basically on the level of novice or beginner programmers and they will be your weakest link. This is also why all these esoteric things like logical and functional programming never took off - prolog and haskell are too hard for a lot of programmers.
>>
>>108564730
>paid
They made the community edition free. There are no more valid complaints
>>
>>108564787
I could easily argue that what idiots think is irrelevant, but I don't even have to. Teaching juniors how to use pattern matching and other FP techniques hasn't been hard for me at all. Kids like terse features.
What I have struggled with is getting dumb shit oldheads to understand it because half of them still program like it's the 90s and they're still using an ancient version of Java. Even fucking LINQ is alien to them.
>>
>>108564791
Non-commercial use only
>>
Imagine paying for a programming license... to the incompetent programmers at microslop.
>>
>>108564814
>Teaching juniors how to use pattern matching and other FP techniques hasn't been hard for me at all. Kids like terse features.
My experience has been the opposite. Even back in college the only class more disliked than Haskell was Prolog.
>>
>>108564897
Respectfully, I don't feel like having to explain for the hundredth time why a) Haskell does not represent FP and b) Haskell is a terrible programming language, which is not because it's FP, or even because it's pure FP.
>>
>>108564783
hello world has a side effect since it prints to the console. an fp purist nigger can't even print hello world in their retarded paradigm
>>
>>108564831
>they heckin’ check!



[Advertise on 4chan]

Delete Post: [File Only] Style:
[Disable Mobile View / Use Desktop Site]

[Enable Mobile View / Use Mobile Site]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.