c# - How does F# deal with the thousands of standard mutable types in the BCL? -


Like price types, point, size, etc.

I too Really irrevocable, do the F # use alternative or irreversible versions of these?

If this standard uses unstable BCL types, will not it compromise with the complete irreversible belief that F # provides both compilation and runtime?

EDIT: What did you mean to ask, if you have alternative irreversible versions of these BCL types, then I do not have to write all these different BCL types with scratches. Or is this the desired behavior that these types (such as point, size, etc.) are still ineligible when using WinForms or whatnot?

You can use types from not BCL (base class library) just fine with F # . Many of these types are volatile, and thus come with the benefits of all associated costs and volatile data.

However, each of these changes can choose to redesign and apply temporary versions of eligible sections, which often work too much. The irreversibility can be a spectrum, not just all or anything, so you can often make the original bits and data structures of your algorithm irreversible, but then use variations when interacting with different Net APIs, It becomes easy to talk. Web services, or iio drag, or whatnot

That said, F # Runtime (FSharp.Core.dll) contains some irreversible collection classes, and (which are almost invariable, are found in the list, hashets, and dictionary organs. Generic, because it is often an irreversible collection, for example it is useful for continuous snapshots in multi-threaded code.

To look at a 'mentality' point, I should think about this: Change in F # encourages state mitigation . Nearly every important app is bound to use the state of some instability, but if you keep your original data structures and algorithms mostly free from instability, you get the benefit of irreversibility for the main part of your code. F # makes it easy to get this benefit in the main part of your code, while still making the volatile state easy to connect, either in the 'spotted' pocket, or around the boundaries of the edges and the communication of your application.


Comments

Popular posts from this blog

sql - dynamically varied number of conditions in the 'where' statement using LINQ -

asp.net mvc - Dynamically Generated Ajax.BeginForm -

Debug on symbian -