Пікірлер
@PanMaciek
@PanMaciek 15 күн бұрын
Nice code, didn't see F# used in a while. I remember using it tho, it was a nice experience
@ThePureState
@ThePureState 15 күн бұрын
Then this might be a good chance to restart your journey! F# is super simple, and so easy to learn and use :)
@Fxplorer5000
@Fxplorer5000 Ай бұрын
Where is the link to David's video??
@ThePureState
@ThePureState Ай бұрын
Davids Part was not recorded
@GianluigiConti
@GianluigiConti Ай бұрын
The video I was waiting for! Many thanks
@WillEhrendreich
@WillEhrendreich Ай бұрын
Awesome thanks!
@TokyoXtreme
@TokyoXtreme 2 ай бұрын
I love when I find a great channel and I'm one of the first 1000 subs. And thanks to this particular video, I'll be able to speak enthusiastically at length about curried functions if an interviewer tries to stump me.
@TreeLuvBurdpu
@TreeLuvBurdpu 2 ай бұрын
It doesn't make sense to say "that's not a problem AT ALL" and then "here's how we fix it".
@coder_one
@coder_one 3 ай бұрын
Beautiful language F#. Too bad there are no job offers in this language, so it's just a curiosity ;(
@kacperkwasny3848
@kacperkwasny3848 3 ай бұрын
You've earned a subscriber ;D Can't wait for upcoming videos
@jongeduard
@jongeduard 3 ай бұрын
I just came across this video, but really great explanation and makes a couple of things clear! Because I have actually done some things with F# and I know I noticed how I could pass one parameter left of the pipe operator, while I could place other parameters still right of a function which I using. But I did not really know about the actual theory behind this, and now I do. So thanks a lot for that! Professionally I work with C# mostly, but actually I touch in many languages, especially also Rust, which regardless of very different syntax is also inspired by the OCaml, ML and friends, from which F# is a direct derivative by the way, with a very similar syntax.
@ThePureState
@ThePureState 3 ай бұрын
Poking your nose into new things can only be valuable - even if it just means rethinking your habits and daily work. F# is a very practical language, with full access to all .Net libs, great tooling in VSCode (Ionide), Visual Studio and Rider. It's mature, performant, compiles also to JS, and for me, it's the choice for "getting things done".
@MaxJM711
@MaxJM711 3 ай бұрын
I don't really use functional programming but I got this video recommended and man I'm so happy I decided to watch it. Love the content man! Always great to see some problems through other PoV like the ones functional programming offers :D
@ThePureState
@ThePureState 3 ай бұрын
Happy to hear that you find it valuable, and have fun trying it out.
@trejohnson7677
@trejohnson7677 3 ай бұрын
this is a reminder that javascript is just lisp
@jongeduard
@jongeduard 3 ай бұрын
Hmm, funny that you mention Lisp! Because if I am right Lisp does not use infix notation. It's quite an old language I know, with lots of dialects. Really old calculators in the past also used prefix. Infix came later. I would not really call it like JS though, unless you look at the deep level of nesting how some people code. 🤐
@ThePureState
@ThePureState 3 ай бұрын
Propably LISP-inspired? In case you have a lot of time, there's a HOPL paper for JS: dl.acm.org/doi/pdf/10.1145/3386327
@codeman99-dev
@codeman99-dev 3 ай бұрын
F# is the language that just makes sense. I only wish that interop with the .NET family were easier.
@ThePureState
@ThePureState 3 ай бұрын
Easier interop in which way - which direction - which field?
@codeman99-dev
@codeman99-dev 3 ай бұрын
@@ThePureState Specifically, using a C# library in F#. I don't really remember the pain points at the moment to be honest - this was at a past employer and it has nearly been a year.
@ThePureState
@ThePureState 3 ай бұрын
@@codeman99-dev Give it a try - my experience is a really good one - especially for C# -> F# interop.
@Exilum
@Exilum 3 ай бұрын
2:05 Edit: I pretty much describe what's next in the video... Was coincidental enough (as I don't do F# at all) and funny to me that I kept the comment up. This reminds me how much I like the C# way, which is operator overloading. Its limits as an object-oriented language can be felt in the way it's done at the class level, but you could imagine that concept used more closely to the functional way. An ideal functional implementation of this in my opinion would allow you to define operators just like you'd define a variable, then use it just like any operator. Reusing the example, you could imagine something like that: let (+) = appendString let example = 2 + 3
@fabricehategekimana5350
@fabricehategekimana5350 3 ай бұрын
Finally someone talking about piping in programming language like typescript ! Thanks for this useful video👍
@GdeVseSvobodnyeNiki
@GdeVseSvobodnyeNiki 3 ай бұрын
Scott Wlaschin made huge influence on developers. A lot of functional bros are mentioning him in their videos. I finally started to understand how it all sticks together in a functional world thanks to his videos.
@ThePureState
@ThePureState 3 ай бұрын
Scott Wlaschin is King! Deep respect for all of his work, and a definite recommendation.
@reynardlee3667
@reynardlee3667 3 ай бұрын
THIS IS SOOOO GOOD!! please make more
@faanross
@faanross 3 ай бұрын
lovely dude! subbed.
@daymannovaes
@daymannovaes 3 ай бұрын
oh that's a really well made video, 10/10! Thanks for creating it.
@trubiso
@trubiso 3 ай бұрын
incredible video, you deserve way more subs :)
@anon_y_mousse
@anon_y_mousse 3 ай бұрын
Personally, I find that one of the more annoying aspects of most functional programming languages is the syntax. Partly it's that they use a bunch of symbols in ways that only make sense for functional languages, and partly it's the placement of terms. In my opinion, the best language to really demonstrate functional concepts would be LISP. The overuse of parentheses is really annoying but it's incredibly simple to understand due to the form that it takes on. Of course, I'd rather use brackets than parentheses, but mostly because they're easier to type, and the shape of them appeals to my OCD. Though, the fact that they would make sense as the symbol for a "list" of objects doesn't hurt.
@ThePureState
@ThePureState 3 ай бұрын
LISP is of course a thing on it's own :) In F#, there aren't many operators to be known (less than in imperative languages I'd say), and although it's possible to define a bunch of custom operators, I wouldn't recommend that, and I don't know many libraries that make use of it - maybe Saturn for composing web parts, or Parsec-like libraries like FParsec, where it's an important part of the vocabulary one has to learn, are exceptions that I use in my work.
@anon_y_mousse
@anon_y_mousse 3 ай бұрын
@@ThePureState What all do you use F# for, and do you use it for fun too?
@ThePureState
@ThePureState 3 ай бұрын
I use it for almost everything: For my clients, BE + FE (Transpiled to JS using Fable), fun projects, embedded and IOT stuff, and so on...
@anon_y_mousse
@anon_y_mousse 3 ай бұрын
@@ThePureState Are any of those fun projects games? If so, do you write things from scratch or do you have a specific toolkit/engine that you use?
@ThePureState
@ThePureState 3 ай бұрын
@@anon_y_mousse Ah, that you mean with "fun" projects :) I'm not really into games, but you can use F# with Unity and Godot somehow, or Monogame for 2D, or ... You can ask in the unofficial F# Discord server.
@lemosep.-kd5yr
@lemosep.-kd5yr 3 ай бұрын
KZbin randomly recommended me this. I love it.
@ThePureState
@ThePureState 3 ай бұрын
Glad you love it! It's always a benefit to learn F# I'd say, and to dig into the concepts behind it.
@TheRhopsody
@TheRhopsody 3 ай бұрын
Same here :D
@TokyoXtreme
@TokyoXtreme 2 ай бұрын
Exactly the crisp and clear presentation that I like - no background music or annoyances, just well-spoken expert imparting his knowledge with perfect audio and superb visuals. And a nice coat!
@nojaf
@nojaf 3 ай бұрын
Happy the plant is back!
@ThePureState
@ThePureState 3 ай бұрын
But the form follows function - (in that case: content)
@coder187
@coder187 3 ай бұрын
I have started using F# one month ago and the language is very interesting (no semi-colons, currying, very strong type inference, discriminated union, pattern matching, pipes, etc...) after looking at a FParsec video. Integration with C# is very good, which make migrating some part of your code very easy. I have already migrated all my functional code from C# to F# (for clean, succinct and performant code 😉). I am considering migrating all my complicated C# ADO.NET datalayer access to F# SQL type providers. F# community looks great and sharp! I will watch all your lectures so please keep the good work. Thank you guys.
@RealDieselMeister
@RealDieselMeister 4 ай бұрын
Awesome work Ronald!
@ThePureState
@ThePureState 4 ай бұрын
Thanks man! Keep sharing :)
@NathanielElkins
@NathanielElkins 4 ай бұрын
Really cool, I've just started to try and use this setup instead of Postman for a little personal project I just started working on. Have you considered packaging up some of this common "Postman-like" functionality into a module in FsHttp, or in a separate Nuget packge? It's easy enough to copy-paste, but it might lower the barrier even further to using this great library.
@ThePureState
@ThePureState 4 ай бұрын
Sounds like an idea. Maybe create an issue for it? github.com/fsprojects/FsHttp/issues Thanks you :)
@robmawston4986
@robmawston4986 4 ай бұрын
Great video, especially the authentication approach - is the source code available ?
@ThePureState
@ThePureState 4 ай бұрын
Here it is: Leave a ⭐ for FsHttp on GitHub: github.com/fsprojects/FsHttp Code ⌨️: github.com/SchlenkR/ThePureState_HackableHTTPClient
@NathanielElkins
@NathanielElkins 4 ай бұрын
​@@ThePureState Hm, that GitHub link seems to return a 404.
@naxels
@naxels 4 ай бұрын
@@ThePureState, unfortunately it says Github 404 Page Not Found when looking for the code.
@ThePureState
@ThePureState 4 ай бұрын
@@naxels Look here: github.com/SchlenkR/ThePureState_HackableHTTPClient
@naxels
@naxels 4 ай бұрын
Now it works, thank you
@fawin123
@fawin123 4 ай бұрын
Will these sessions be uploaded somwhere?
@ThePureState
@ThePureState 4 ай бұрын
The sessions will be a) Live: see amplifying-fsharp.github.io/fsharp-essentials for more infos, how to join and when b) Recorded: An edited version of the sessions will be available online Feel free to share to everyone who wants to learn something new - not just a new syntax, but also a new way of thinking about how to write modern software in 2024.
@WillEhrendreich
@WillEhrendreich 4 ай бұрын
Utterly fantastic as always, Ronald! I'm totally new to web dev in any way, I have almost zero idea how it all works, however, I can tell this is all very simple and elegant done this way. What do you suggest for me to learn fsharp web dev from the completely unaware to the expert level?
@ThePureState
@ThePureState 4 ай бұрын
I usually have a hard time with recommendations. It depends on so many subjective things. For basic F# things in general, have a look at the "F# Essential Lectures" from my friends of Amplifying F#: amplifying-fsharp.github.io/fsharp-essentials/ Then, I thing web dev is a fields that's vast, and requires skills independent from the language used. For frontend stuff, have a look at Vide-4-Fable (vide-dev.io/) (disclosure: I've developed it), ot all the Fable resources in general. WebSharper might also be a cool thing, because it provides a full-stack experience. Although I've never used it in production, I guess it's worth a try.
@aramtchekrekjian7553
@aramtchekrekjian7553 5 ай бұрын
These sessions will be really interesting.
@ThePureState
@ThePureState 5 ай бұрын
It's hosted by @amplifyingfsharp, and will be brought to you by Ian Russell, who wrote the book "Essential F#" (leanpub.com/essential-fsharp). They will rock - that's for sure! Stay tuned, and visit amplifying-fsharp.github.io to get more infos soon!