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.
FP has exploded because concurrent processing has exploded in hardware.
Suddenly you need a way to guarantee that you're not overwriting what another "thread" of execution is doing.
How is this any different than writing multithreaded code where the developer knows the scope of the variables used? I use the Task Parallel Library in .NET a lot, and never have any trouble with one thread/task affecting variables in another.
It’s not necessarily a whole lot different. Functional programming “automatically” supports structures and methods that support this type of thing a bit more easily than procedural or OOP languages. It’s also a way of thinking that is a part of FP.
And, you can definitely do the same things with different tools. That is what confuses newer devs the most, I think. Of course some languages and some language types make certain things harder or easier.
I've always had the impression that functional programming was academia's pathetic attempt to wrest computing back to the 1960's era notion of high priests in attendance upon their gods, with the academics in the role of the priests.
They can't earn a living doing programming themselves, so they're trying to keep the rest of us from doing so as well. them.
F# works quite well with the rest of .NET, so it gets along well with OOAD,
It's a native .Net language and interesting to play with.
The first step in learning effective F# is to forget everything you know about programming unless you learned Prolog!
Learned Prolog, way back when Borland had a Prolog compiler and IDE, I found F# was similar in some respects with OOP added on.
CQ de W5ALT
Walt Fair, Jr.PhD P. E. Comport Computing Specializing in Technical Engineering Software
Tried to get into "real" FP a couple times but I haven't found a single tutorial starting with something FP does better than, let's say, OOP or even procedural. On the other hand, functional concepts are creeping into languages like C# where I've been using them extensively. Heck, even variable.dosomething(parm).dosomethingelse(someotherparm) is, as a matter of fact, functional.
Language Vb.net and C# have Linq which provides these OOP languages with FP. Switching from a OOP language to an FP language is another mater. I keep saying my next project I'll write in F#. but my designs always wind up using OOP constructs so I stick with my OOP language and use all of its FP features.
Specifically I hate all of you who thought it would be a good idea to push an update - which I've been studiously ignoring because I know what will happen - without permission?
I use a set of documents - DOCX and XLSX - on a regular basis. For example, I keep "Thought of the day" as a DOCX file so I have a bunch ready to go, and can check that I aren't duplicating (too much)
So I pin them to the taskbar list.
And despite loads of reports from me and others who find it irritating, the Taskbar icons and their associated lists (both recent and pinned) are destroyed by your updates. Every. Single. Time.
That's irritating, but when I decide to go for an update, I can take a screenshot, and restore my lists after the update.
When you push a Elephanting update on me and don;t elephanting ask first I can't. So I lose them. Which is not just irritating, it's elephanting annoying. OK, I can work it out using folder contents and some of them via your "recent files" - but since DOCX and XLSX, OTT, ODT, and UncleTomCobley files are mixed in there without any care for the app that created them it doesn't help as much as it should.
Go and die in a fire.
Sent from my Amstrad PC 1640 Never throw anything away, Griff
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
AntiTwitter: @DalekDave is now a follower!