Тёмный
Studying With Alex
Studying With Alex
Studying With Alex
Подписаться
im alex
Комментарии
@alastairleith8612
@alastairleith8612 2 дня назад
I wish loud soundbed musak wasn't considered de rigour everywhere ATM. it really is very distracting not some kind of educational aid.
@NikolajLepka
@NikolajLepka 2 дня назад
oh you call it run? I call it apply
@aaquibtayyabi
@aaquibtayyabi 2 дня назад
1:09 But doesn't ascii use 7 bits for representation ?
@chronos7554
@chronos7554 3 дня назад
i feel like im losing my sanity watching this thats how you know its good
@lanx0652
@lanx0652 3 дня назад
Feel like rust
@illdieanyway7865
@illdieanyway7865 4 дня назад
Why explain without code?
@jacobthomas1344
@jacobthomas1344 5 дней назад
Ok the usefullness of this wasnt making any sense to me until we started using nullable types. Maybe JS wasn't the best langauge to explain these concepts with? The pattern seems to be much more relevant to other languages like C# to me
@andresgutgon
@andresgutgon 5 дней назад
The best way to learn monads is as always by using them. i use the result pattern which I think is another monad
@isaacking4555
@isaacking4555 5 дней назад
Or you can log in the function and set the log level like a normal person
@uxmansarwar
@uxmansarwar 5 дней назад
please create a video to explain how to convert utf-8 text to 8 bit binary
@leave-a-comment-at-the-door
@leave-a-comment-at-the-door 4 дня назад
that question does not make sense. are you asking for an ASCII table?
@LethalChicken77
@LethalChicken77 5 дней назад
Is that like gonads?
@adre2194
@adre2194 5 дней назад
I don't understand... how is this meant to help us in our battle against the Mechon?
@ezsnova
@ezsnova 6 дней назад
Feel like I've leveled up as a developer after watching this 🙌
@Omnifarious0
@Omnifarious0 6 дней назад
This seems ridiculously overcomplicated.
@sigstackfault
@sigstackfault 6 дней назад
my hobby: spreading lies about functional programming "Monads are just functions which take one argument. They always explain it in a really complicated way."
@supermaster2012
@supermaster2012 7 дней назад
Heap programming at its peak
@glenospace
@glenospace 7 дней назад
Please no music
@alastairleith8612
@alastairleith8612 7 дней назад
please remake this using Haskell for the code examples! great monad tute but torture for my eyes parsing the JS :-)
@zxuiji
@zxuiji 8 дней назад
4:23 Way to turn a perfectly readable `n * n` to obfuscated code. I would hate to debug your code. Would've been better to create *separate functions* for stringifying what was done. Something like var n = 5 log(beganwith(x)) log(added(x,1,(y = add(x,1)))) log(squared(y,(z = square(y)))) log(multiplied(z,3,multiply(z,3))) would be far less confusing to read. since it doesn't create additional lines of code in functions that should kept to just one task so that they can be inlined by any compiler that's used instead of an interpreter
@nickeldan
@nickeldan 8 дней назад
Is this related to Aspect Oriented Programming?
@tropicarls
@tropicarls 9 дней назад
So really I’ve been using monads for a long time now. Nice!
@shadeblackwolf1508
@shadeblackwolf1508 9 дней назад
If i'm seeing this right, it looks like a technique to bind operations that don't want to know about the all parts of a data structure to only the parts it wants to know about, in a way that's easy to extend both on the supported functions, and the underlying data structure. And then the broader secret work clicked
@XiangWeiHuang
@XiangWeiHuang 9 дней назад
feels like a glorified version of wrapper pattern, or rebuilding object-oriented design in a function language without using class (new NumberWithLogs(5).add(5).square() ?). the secret work-behind-the-scene sometimes can be confusing either, because hiding the null protections, the function name not indicating it, the later readers must be familiar with the library or they won't know certain behaviours actually happen from the code. Hiding certain behaviours to ease things out - that also sound like what classes are for, and don't get me wrong, same issue also happens in object-oriented languages. We usually need to think a fitting name for things or write good documentations to avoid that. This video kinda ignored such aspect - codes are more for reading. It also results in repeating code, using monads in the way of first example. The code's theme should be about calculations, but reading the final product, it seems more about runWithLogs().
@newsofthenerd
@newsofthenerd 9 дней назад
I thought typescript is just an attempt to fake a type system badly over javascript a non functional language. Why the heck are you talking about monads? Theres no monads in javascript lol.
@IllIl
@IllIl 10 дней назад
_CAP_ is actually *PAC* "In case of *Partition* you can choose between *Availability* or *Consistency* but not both." *CAPELC* is the full reality: "In case of *Partition* you can choose between *Availability* or *Consistency* but not both. *Else* (when not partitioned), choose between *Latency* and *Consistency* "
@IllIl
@IllIl 10 дней назад
Bro, you're a legend. I've tried at least a dozen times before this to learn about monads. Wikipedia, googling, videos... was always left with the feeling that even though I didn't get it, the explanations were all trash. This video is so clear, I immediately understood the concept and how it was useful. And some old examples of monads that still rattled around in the skull suddenly made a lot more sense. Thank you.
@qweewqqweewq31313131
@qweewqqweewq31313131 10 дней назад
Finally understand what Monads is as I already using them in code like std::optional<T>😂
@zo2ahy
@zo2ahy 10 дней назад
At 8:37, the very first line of getPetNickname calls getCurrentUser. If getCurrentUser returns a User of None, do the other lines in getPetNickname execute as well?
@musangbeku
@musangbeku 11 дней назад
Makes sense. Thank you very much ❤
@rolandvarga3912
@rolandvarga3912 11 дней назад
dude, make more videos! Such high quality stuff 👏
@andrewpinedo1883
@andrewpinedo1883 11 дней назад
Where you at?
@tylerholden1548
@tylerholden1548 11 дней назад
I think maybe in more professional and critical software this could be important, but as a game dev I watch this and think "wow this is very overcomplicated"
@user-uf4lf2bp8t
@user-uf4lf2bp8t 5 дней назад
Don't worry, the library code that you use takes care of this so you don't have to.
@sheepcommander_
@sheepcommander_ 2 дня назад
` Vector2?`
@1____-____1
@1____-____1 12 дней назад
This example is shockingly close to Rust.
@HyuLilium
@HyuLilium 12 дней назад
Seems there are libraries around bringing monads and other FP features to JS but they are NOT good for bringing in real production work with teams for many reasons.
@keanucoetzee8627
@keanucoetzee8627 12 дней назад
Monads? They hang between molegs.
@HyuLilium
@HyuLilium 12 дней назад
How would you use this practically in JS?
@tropicarls
@tropicarls 9 дней назад
If you have ever done an http request to an api, then you probably have used a type of monad (promises) to handle the operation and its return value
@hoarsebees
@hoarsebees 13 дней назад
If the trade off is “duplicate code or use monads” I’m duplicating code every time no question.
@zeroows
@zeroows 13 дней назад
Thank you. Please keep these Great videos coming.
@310gowthamsagar5
@310gowthamsagar5 13 дней назад
your videos are great. thank you.
@namhynguyenhoang1043
@namhynguyenhoang1043 13 дней назад
Anyone here feel this example so complicated for the intro of monads?
@ross9263
@ross9263 14 дней назад
Whyd u use typescript 😢
@pretentious_a_ness
@pretentious_a_ness 6 дней назад
Anything like C++, python would've been much nicer
@yacinelaghmari
@yacinelaghmari 14 дней назад
Really good video dude. Thank you
@julianhu
@julianhu 16 дней назад
This is absolutely the best explanation video about async I've ever seen. Amazing work!
@trontrontrontron4
@trontrontrontron4 17 дней назад
i watch a lot of videos on monads and they always focus on the generic aspect of the monad wrapper, but really this video nails behavior aspects which is what really matters. you can even write monadic code in C using this examples and still have great value using it.
@hundvd_7
@hundvd_7 18 дней назад
8:40 Huh? Why couldn't it be just return user?.pet?.nickname
@mohamedboudrioua83
@mohamedboudrioua83 18 дней назад
thank u 🤗🤗
@asepulven2768
@asepulven2768 21 день назад
Excellent Video! best explanation so far with visual representation.
@spaceCowboy924
@spaceCowboy924 22 дня назад
I don’t do a ton of programming with my job but I’ve just started a project that requires me to write a code that needs to handle a bunch of undefined data and I was wondering the best way to do that was, lucky I stumbled across this video in a perfect coincidence
@SentryChampion
@SentryChampion 22 дня назад
clockwork
@chritical_ep
@chritical_ep 23 дня назад
This video perfectly answers the questions I had. The techniques are described clearly and concisely. I've got to write this down. Thanks for the video!