News for hackers. Stuff that matters.
Re:F# Data Type Providers in .Net Core (2018) by jolux on Tuesday January 07, 2020 @08:55PM (#21987476)
What’s C# got recently that doesn’t already exist in F#?
Re:F# Data Type Providers in .Net Core (2018) by idnefju on Tuesday January 07, 2020 @10:47PM (#21988087)
C# are pushing for type classes https://github.com/dotnet/csharplang/issues/164

which author of F#, previously, didn't like to add to F#. (Not hating on how he wants the language to evolve)

Re:F# Data Type Providers in .Net Core (2018) by chusk3 on Wednesday January 08, 2020 @08:18AM (#21991126)
For clarity, the position is that large features like TC/HKT won't be added in a way that could conflict with a later-added .net/IL version of the feature.
Re:F# Data Type Providers in .Net Core (2018) by jolux on Saturday January 11, 2020 @08:00PM (#22023619)
There are real problems with IL compatibility. There’s a reason F# doesn’t have ML functors.
Re:F# Data Type Providers in .Net Core (2018) by pjmlp on Wednesday January 08, 2020 @04:02AM (#21989702)
Support for .NET Native would be an example.

Default interface methods, not sure about the current support state.

The accessors protected private.

I am also not sure if all low level programming features added to C#, taken from Midori and until C# 7 only usable from C++/CLI, are also exposed to F#.

Re:F# Data Type Providers in .Net Core (2018) by phillipcarter on Wednesday January 08, 2020 @11:20AM (#21992761)
.NET Native is being replaced by .NET Core and Mono with .NET 5, which has been the plan for some time. Doing work specifically for that toolchain might have been more meaningful 4 years ago, but the amount of investment required relative to the benefit (number of developers targeting it) would have been pretty low too. Incidentally, it also works and publishing to the store is unblocked; just not supported via the VS tooling.

DIMs are set for .NET 5. Cut from Core 3.0 since quality would have been an issue.

_private_ has been supported in F# for ages; _protected_ is explicitly not supported. I'd personally like to see it supported for interop but this is the language designer's call.

All the low-level programming features added to C# have F# "equivalents", and I use quotes because semantics differ between the languages and so your experience using one or the other is going to be quite different depending on what you're doing. But the performance output will be the same.

Re:F# Data Type Providers in .Net Core (2018) by JaggerJo on Wednesday January 08, 2020 @04:28AM (#21989826)
.Net Native works
Re:F# Data Type Providers in .Net Core (2018) by pjmlp on Wednesday January 08, 2020 @04:34AM (#21989860)
For some definition of "works".

Visual Studio tooling support is nowhere to be seen, and the github issue does least some caveats.

Re:F# Data Type Providers in .Net Core (2018) by platz on Tuesday January 07, 2020 @09:22PM (#21987658)
well C# 8.0 introduced async streams, for example
Re:F# Data Type Providers in .Net Core (2018) by chusk3 on Wednesday January 08, 2020 @08:20AM (#21991146)
Yes, and the F# library for asynchronous sequence processing had support added for them shortly thereafter (https://fsprojects.github.io/FSharp.Control.AsyncSeq/library...)
Re:F# Data Type Providers in .Net Core (2018) by phillipcarter on Wednesday January 08, 2020 @01:06PM (#21994018)
It's worth noting that this isn't an "IL feature", but a new type that includes some knowledge of the type shape in the C# compiler. The existing F# package for async streams understands the new type, and it "just works" in F#.
Re:F# Data Type Providers in .Net Core (2018) by adgasf on Wednesday January 08, 2020 @04:55AM (#21989978)
F# allows you to implement such features as libraries using computation expressions.
Re:F# Data Type Providers in .Net Core (2018) by louthy on Wednesday January 08, 2020 @07:35AM (#21990817)
So does C# with LINQ [1]. I guess C# language development tends to lean more on concrete syntax than libraries, which is a shame, but it is possible. It's also a shame LINQ can't be extended like computation expressions.

[1] https://github.com/louthy/language-ext/blob/master/LanguageE...

Re:F# Data Type Providers in .Net Core (2018) by dgudkov on Wednesday January 08, 2020 @03:48AM (#21989631)
The async model in F# is entirely different from C#. Not sure if an equivalent of C# async streams would make sense in it.