Haskell in 100 Seconds

  Переглядів 817,685

Fireship

Fireship

День тому

Haskell is a purely functional programming language based on lambda calculus. It uses immutable values and expressions to produce terse code that is suitable for general-purpose software applications.
#programming #compsci #100SecondsOfCode
🔗 Resources
Haskell Docs www.haskell.org/
Haskell Wiki wiki.haskell.org/
Monad Graphic stackoverflow.com/questions/9...
🔥 Get More Content - Upgrade to PRO
Upgrade to Fireship PRO at fireship.io/pro
Use code lORhwXd2 for 25% off your first payment.
🎨 My Editor Settings
- Atom One Dark
- vscode-icons
- Fira Code Font
🔖 Topics Covered
- Haskell Basics Tutorial
- Functional programming concepts
- Who is Haskell Curry?
- What is Haskell used for?
- What is a Monad?

КОМЕНТАРІ: 897
@MasterGeekMX
@MasterGeekMX 2 роки тому
When I learned Haskell at college it felt like if a hardcore Mathematician with zero experience in programming was tasked to design a programming language solely based in the definition of what a programming language is.
@005xelculotlainco
@005xelculotlainco Рік тому
Thanks
@stopper0203
@stopper0203 11 місяців тому
Sounds like my kind of language 😎
@_david_mp
@_david_mp 11 місяців тому
My lord i've to learn haskell in 3 days for a college exam and came here to see if i could undertand a bit better haskell but this language is... estrange😵🤧🤧
@I_Love_Water
@I_Love_Water 9 місяців тому
@@_david_mp Haskell in 3 days???? Like maybe learn C in 3 days actually doable if you put 72 hours in, but you ain't learning Haskell completely in 3 days mate.
@SanderMakes
@SanderMakes 8 місяців тому
​@@I_Love_Waterthey never said learn completely. Just completely enough to pass the exam
@EidosX_
@EidosX_ 2 роки тому
For the little more advanced users, here is an interpretation of the IO monad that I really liked: If you imagine that you put the state of our entire universe in a record World, then IO could be seen as a World Transformer. Thus, a function with side effects simply maps a state of the World to a new one. For example, putStrLn "Hello World!" takes a World where the screen is blank, and returns a World where "Hello World!" is on the screen :) I find this interpretation beautiful, and it doesn't violate immutability nor does it need side effects
@levibanks7138
@levibanks7138 2 роки тому
Yeah that’s a great explanation Bind just takes the result from a monad action and then inputs it to another function
@petrushoc
@petrushoc 2 роки тому
IO a ~ (Real World) ->(Real World, a)
@TheMR-777
@TheMR-777 2 роки тому
You are creating Branches in *MULTIVERSE* mate! :)
@SimGunther
@SimGunther 2 роки тому
All this is possible thanks to the runtime that says "I won't do this I/O effect now, but if I were, here's how I'd do it" and never tells the user how the world exactly changed. It would just let the user assume that the world changed in some way to maintain the illusion of "purely functional code" that is somehow useful...
@TheMR-777
@TheMR-777 2 роки тому
@@SimGunther You mean, The Laziness?
@ben_sch
@ben_sch 2 роки тому
I'm learning Haskell in university this semester. It's quite hard to learn but makes you feel like a wizard when it works 🧙‍♂
@joaquinbonifacino6964
@joaquinbonifacino6964 2 роки тому
Exactly in the same position, i have my exam tomorrow xd, but then you rage because the code isn't compiling because of a space..
@dannyisrael
@dannyisrael 2 роки тому
I don't feel like a wizard when it works.
@MewPurPur
@MewPurPur 2 роки тому
I don't feel like a wizard because it doesn't work :(
@codelightsparkles2403
@codelightsparkles2403 2 роки тому
I don't wizard like a feel
@tokiomutex4148
@tokiomutex4148 2 роки тому
@@joaquinbonifacino6964 Let the hate flow through you
@japroz
@japroz 2 роки тому
Pls try Elixir in 100 seconds. It's a really nice programming language. Great vid tho
@abh1yan
@abh1yan 2 роки тому
Yeah
@menardmaranan9356
@menardmaranan9356 2 роки тому
agree
@toesi-chan
@toesi-chan 2 роки тому
yes!!!! and you could cover the phoenix framework with it
@kp8752
@kp8752 2 роки тому
My fav language to use
@akshattamrakar9071
@akshattamrakar9071 2 роки тому
Totally agree
@MicheleRiva
@MicheleRiva 2 роки тому
The problem with Haskell is that once you try it, you never come back
@tokiomutex4148
@tokiomutex4148 2 роки тому
All code written in those imperative object oriented languages is brittle and it sucks
@dewigesrek5651
@dewigesrek5651 2 роки тому
well, hi
@dewigesrek5651
@dewigesrek5651 2 роки тому
i left haskell due to lack of jobs
@yOkay_
@yOkay_ Рік тому
@@tokiomutex4148 i love assembly btw
@pubgplayer1720
@pubgplayer1720 11 місяців тому
​@@tokiomutex4148storing state in variables is something I will never forego ever again; haskell sucks balls
@alessiopetrin549
@alessiopetrin549 2 роки тому
Keep up the great content, absolutely love each single video you make!
@Blazeking636
@Blazeking636 2 роки тому
I like these super quick breakdowns of the language and how to get started. Fantastic series thank you for making it
@taylorallred6208
@taylorallred6208 2 роки тому
Learning Haskell was one of the most fun experiences of my life. Even if you never use it, learning it will expand your mind and make you a better programmer.
@just-do-halee7375
@just-do-halee7375 2 роки тому
Wow that was Rust in my life.. so i should learn Haskell Okay
@hojdog
@hojdog 2 роки тому
Is there any particular resource you used to learn Haskell that you can recommend?
@marusdod3685
@marusdod3685 2 роки тому
@@just-do-halee7375 Haskell is basically Rust with a way better type system, also comes with a garbage collector so you don't have to worry about the compiler complaining for hours about pointer lifetimes
@leoaso6984
@leoaso6984 2 роки тому
@@hojdog "Learn you a Haskell" was a fun read.
@StuWilloughby
@StuWilloughby 2 роки тому
@@marusdod3685 Some might say that having a compiler moan until your code is guarenteed correct is better than relying on a non-deterministic GC.
@EddyVinck
@EddyVinck 2 роки тому
Functional programming is so cool. Even if you don't like hardcore functional programming, you can still take parts of it and include it into your own code in for example JavaScript.
@embeddor2230
@embeddor2230 2 роки тому
Avoiding mutable state is always desired in all programming paradigms.
@teemukarppinen9462
@teemukarppinen9462 2 роки тому
@@embeddor2230 True. Although it's often ignored and not emphasized enough in OO
@marusdod3685
@marusdod3685 2 роки тому
@@embeddor2230 yet 90% of functional code uses some sort of state monad.
@insertoyouroemail
@insertoyouroemail 2 роки тому
@@marusdod3685 That is not true.
@mekelius
@mekelius 2 роки тому
Yes, but it makes me sad that Guido said that python will never have tail calls, so out of the box my two loves can never be brought together :( JS is getting there tho.
@leoaso6984
@leoaso6984 2 роки тому
Learning Haskell is an adventure. You're learning about currying, pattern matching etc. and you're like "this is such a cool language". Then monads just come out of nowhere and hit you like a brick wall.
@deidyomega
@deidyomega 2 роки тому
You arent wrong about crying.
@marusdod3685
@marusdod3685 2 роки тому
each monad feels like an entirely different programming paradigm
@wingjaigaming8240
@wingjaigaming8240 2 роки тому
This is exactly what I feel right now lol. I’m taking a course about functional programming this semester
@orkhepaj
@orkhepaj 2 роки тому
monads?
@marusdod3685
@marusdod3685 2 роки тому
@@orkhepaj indeed
@ransomecode
@ransomecode 2 роки тому
I would probably give you a hug right now! Thank you for introducing Haskell to the community; 😊
@drsubtracto
@drsubtracto 2 роки тому
Love your videos man! Your content is indeed fire like your channel logo.
@xenialxerous2441
@xenialxerous2441 2 роки тому
Amazing! You made it sound incredibly simple, thanks!!
@arhamaneeq1323
@arhamaneeq1323 2 роки тому
Okay, you've gottttt to do APL now. That wonderfully fascinating language deserves your (and our) attention.
@fckngcheetah
@fckngcheetah 2 роки тому
no god please no
@juanandrescastillofuenmayo6619
@juanandrescastillofuenmayo6619 2 роки тому
I've been waiting weeks for this! Finally, FINALLY!!
@gaius_enceladus
@gaius_enceladus 2 роки тому
I've only played with Haskell a little bit but the lib that blows me away is Parsec (parsing library). Being able to write interpreters in code that looks just like the BNF grammar sounds awesome! ( I haven't written one myself yet but have seen small examples.)
@PahpriosGaming
@PahpriosGaming 2 роки тому
Just found this channel a few days ago. The content is AMAZING.
@Filaxsan
@Filaxsan 2 роки тому
Super cool! I've always been fascinated by Haskell!
@giuco884
@giuco884 2 роки тому
Seeing you got into functional programming maybe do a Prolog or Lisp in 100 seconds :)). I'm currently studying them in college and I found them a really nice eye opener for functional programming.
@brucewayne2480
@brucewayne2480 2 роки тому
There is also OCaml
@begejekan1244
@begejekan1244 2 роки тому
Isn't Prolog declarative programming though?
@dannyisrael
@dannyisrael 2 роки тому
I think the main thing is that Prolog is relational/logical, it basically fills in the gap with everything that is true. X + 2 = 4 X = 2 or, validCourses(CS, X). X = a valid course, press ; for the next result. You probably knew that though.
@JeyPeyy
@JeyPeyy 2 роки тому
@@begejekan1244 functional programming is a form of declarative programming. But prolog is usually considered a logic programming language, which is another form of declarative programming.
@Nolkaloid
@Nolkaloid 2 роки тому
God please, not prolog x)
@russ2001master
@russ2001master 2 роки тому
You finally delivered. Bless.
@DomskiPlays
@DomskiPlays 2 роки тому
Took a class on that in uni and it was actually pretty damn cool. Makes you use your brain a lot more!
@yan-amar
@yan-amar 2 роки тому
Please do Prolog next ! :) It's sufficiently different from the others to deserve its place. And more on Haskell would be cool too IMO.
@randomizednamme
@randomizednamme 2 роки тому
Prolog broke my brain way more than Haskell
@Daniel_WR_Hart
@Daniel_WR_Hart Рік тому
Pretty underrated language. I had to learn it a bit for an AI course, but it can be kind of fun for doing basic LeetCode-style questions. It would probably be more fun if I actually learned the difference between the 5 different ways to assign/bind/compare
@hansisbrucker813
@hansisbrucker813 10 місяців тому
What made Prolog click for me was strangely enough learning Erlang as the syntax is inspired by Prolog, but slightly easier.
@atava85
@atava85 7 місяців тому
There's nothing quite like Prolog (in all the good senses).
@troglodytto
@troglodytto 2 роки тому
YAAASSSSSSS. Finally! Been Waiting for this forever.
@mathiasayivor
@mathiasayivor 2 роки тому
Love this series
@binchicken9206
@binchicken9206 2 роки тому
Awesome, thanks so much! And congratulations on being first video I've ever changed the speed to slower so I can keep up :-D
@MYMPSWORLD
@MYMPSWORLD 2 роки тому
Great video! Can you make a detailed video about different open source licenses like Apache, GPL, LGPL etc. It will be very helpful to everyone working with open source software and confused about the licenses.
@UnspeakableNightmare
@UnspeakableNightmare 2 роки тому
Currently doing haskell at my uni. Learnt more in this video than in a few weeks worth of lectures.
@evertonc1448
@evertonc1448 2 роки тому
Well, since you set foot in prohibited grounds and decided to scare the normies, now you have no excuse to not make a video about APL.
@Fireship
@Fireship 2 роки тому
We'll get there eventually...
@sebastiangudino9377
@sebastiangudino9377 2 роки тому
YES!!!!! Nothing better to get in to programing that a language you literalt can't type with your keyboard. Let's get this ball rolling
@arhamaneeq1323
@arhamaneeq1323 2 роки тому
@@sebastiangudino9377 It's not like our modern OSs can't switch keyboard layouts on the fly. It takes very little time to get used to it.
@sebastiangudino9377
@sebastiangudino9377 2 роки тому
@@arhamaneeq1323 I mean, i program in dyalog in my free time. I know it's not that big of a deal in practice. But would say that at least for me it did took a long time to get used to it. You can't just throw all this absurd (intuitive one you know then but totally arbitrary when you start) symbols at me and expect me to just start writing code normally. The learning curve of APL is a little bit absurd. And again, i say this a someone who loves that stupid language
@kaiserouo
@kaiserouo 2 роки тому
@@sebastiangudino9377 I think with the tab function like those in TryAPL, that is not really that much of a problem. Or maybe that's because I was just started to get into the field of APL weirdness...
@mskiptr
@mskiptr 2 роки тому
Oh, and the best part is Hoogle! If I don't know what function I need but I know what it would need to do, I can roughly describe it by writing it's type (what it should take and what it needs to give me) and I'll get all the functiona that match, (usually only a few, because the types are pretty specific). Of course searching by name works too
@Bratjuuc
@Bratjuuc 2 роки тому
Hoogle rocks!
@patrickbateman8731
@patrickbateman8731 2 роки тому
Thank you doing this! you are the best!!
@coldstar96
@coldstar96 2 роки тому
Such a great channel to find out about new things quickly so that I can focus on deciding whether I can utilize it or not in my project. Thanks Fireship!
@sachamorgese7280
@sachamorgese7280 2 роки тому
I am afraid to try Haskell cause I might become a functional nazi and refuse to write any code with side-effects
@tokiomutex4148
@tokiomutex4148 2 роки тому
You'll refuse to write code with side effects that aren't wrapped into monads
@okk2094
@okk2094 2 роки тому
me_irl
@deidyomega
@deidyomega 2 роки тому
@@tokiomutex4148 Or maybe he's correct, no side effects at all, and then he just doesn't write code :D
@randomizednamme
@randomizednamme 2 роки тому
A program with 0 side effects just heats up the CPU, it’s about isolating side effects in your source code.
@lawrencedoliveiro9104
@lawrencedoliveiro9104 2 роки тому
That would be a side-effect ...
@marwan.v1511
@marwan.v1511 2 роки тому
This was a great video. I liked it , I'll search more about it
@hashbrown9245
@hashbrown9245 2 роки тому
Finishing up my first semester of cs and we used racket, a similar functional programming language. Happy to see some love for functional programming
@nicholas_obert
@nicholas_obert 2 роки тому
These short videos are good to get to know other technologies you may have never thought looking for.
@ExecuteAutomation
@ExecuteAutomation 2 роки тому
Love the animation of Haskel 🤩
@stoef
@stoef 2 роки тому
The images for monads are so perfectly describing my time with Haskell monads
@kazemanu
@kazemanu 2 роки тому
Best thing of learning Haskell is that you will never finish it. This is a thing with every language of course. But with Haskell is special because depending on your skill level and where you are at the learning curve you will use some tricks or others. Is just like doing Pure Maths, you come up with a trick for a specific problem and refine it further and further until you can define a pattern design or kind of a macro that generalises and then all of a sudden you are solving most of the problems of that field with that. Is much more "abstractable" than other languages.
@neesh774
@neesh774 2 роки тому
This is really interesting! I recently created a project called Monad to share and discover code snippets, named after a philosophy concept, but it’s cool to see how it’s related to computer science.
@vulture-6
@vulture-6 9 місяців тому
Please share your wisdom with us
@Joker22593
@Joker22593 2 роки тому
I always have a lot of fun implementing the peano axioms in lisp-like languages. Learn you a Haskel for Great Good!
@DjLeonSKennedy
@DjLeonSKennedy 2 роки тому
Learning Haskell is awesome, it's totally different world of programming
@MarinelCuculj
@MarinelCuculj 2 роки тому
Explain please blockchan basic programming in one of your shorts. Great work. I really enjoy your videos :)
@VukasinMilinkovic
@VukasinMilinkovic 2 роки тому
Would love even course on this subject!
@DipsankarMaity
@DipsankarMaity 2 роки тому
I started with Hashkell, but never really got to cross the learning barrier, this 100 seconds helped me with that.
@EthanLR
@EthanLR 2 роки тому
darn incredible stuff!
@rishabhgupta2085
@rishabhgupta2085 2 роки тому
Fireship on fire 🔥. Great video 👍🏻
@CodingPhase
@CodingPhase 2 роки тому
good old haskell I remember having to work on a project with this language in 2013
@mioszchrzempiec4429
@mioszchrzempiec4429 2 роки тому
Great vid, waiting for Prolog
@jakemichalowicz1403
@jakemichalowicz1403 Рік тому
Been learning Haskell for about 2 months now. Shit is maaaadd confusing but it’s really fun once you figure out. Even tho I say that about most languages this one feels even better to get right!
@carltongordon
@carltongordon 2 роки тому
OMG YESS!!!!!!!!!!!!!!!!!!!! thank you!!!!!!!!! lemme grab some popcorn for 100 seconds
@tiagocerqueira9459
@tiagocerqueira9459 2 роки тому
Thanks for the heads up, now I know to run when I see this language
@vypxl
@vypxl 2 роки тому
Yes! finally. I have been waiting for this one! Still, this is the most procedural and non-functional explaination of haskell i've ever heard :)
@notanenglishperson9865
@notanenglishperson9865 2 роки тому
Can you suggest any better?
@farhansangaji5029
@farhansangaji5029 2 роки тому
First time hearing this language, thanks Fireship for introduce me to more new programming language
@VOGTLANDOUTDOORS
@VOGTLANDOUTDOORS 2 роки тому
NICELY DONE ! - Data Scientist Mark in North Aurora IL
@hadipawar2539
@hadipawar2539 2 роки тому
The only fear I have in life is 100 seconds videos just stopping. Please keep em coming i love em.
@Htbaa
@Htbaa 2 роки тому
Should've included a bit more about types such as Maybe, Either. Learn You A Haskell For Great Good is such a cool Haskell book and a proper introduction to the language. It has been years since I used Haskell, but had a lot of fun using it back then. If I ever get some spare time again I might just play around with it again.
@Lin_The_Cat_
@Lin_The_Cat_ 10 місяців тому
Haskell is a super interesting language. I mean you can write quicksort in one line using list comprehensions, you can check for list equality with the good ol ==, and so much. I wouldnt say I'd switch to it from my beloved C and C++, but it's definitely a fun toy language that can be really entertaining to use for coding challenges like advent of code for instance.
@paramatus3531
@paramatus3531 2 роки тому
Awesome video as always, I was wondering if you could do Lisp as well?
@dyslexicsoap7605
@dyslexicsoap7605 9 місяців тому
I did Haskell for a total of 1 assignment in college and I thought it was really cool. He gave us a definition for a Lambda calculus expression to be stored as a variable, and then step by step got us `to write all the functions necessary to perform a beta reduction on any lambda calculus expression (if I'm remembering right) The definition was something like the form: `Term = Lambda Term | Application Term Term | Var 'x'`, so you could represent any lambda calculus expression with that by replacing "Term" with any of the 3 possible values for Term recursively e.g. Application (Lambda Var 'x') (Application Var 'x' Var 'y') And then we'd just pass that expression into whatever function we're calling it for e.g. beta-reduce (Application (Lambda Var 'x') (Application Var 'x' Var 'y'))
@Ilyas_Alrai
@Ilyas_Alrai 2 роки тому
I learned it in very hard time in just two weeks, at the time i hated it but i really enjoy functional programming, after that i really liked haskell and enjoy it
@0bmerlin
@0bmerlin 2 роки тому
I think haskells true strength is in its ecosystem. Hoogle and cabal/stack + vscode language integration make everything so much easier. If i need some utility functions or just don't want to implement some algorithm i just use a library by writing single line in my cabal config. I don't think any other language can compete in terms of ecosystem usability.
@devtech4661
@devtech4661 2 роки тому
Look into npm, cargo or pip, many options for doing that
@mskiptr
@mskiptr 2 роки тому
Yep, pretty much this. ^ I'd just add, that *all* the expressions and -variables- named expressions really evaluate to a single value. That includes the `main`! So for example, since both `print 5` and `print "Hello World"` have the type `IO ()`, you can glue them together into one single value and assign it to `main`. In that case, `main` would be an IO value that prints 5 and then prints the Hello World. What's awesome is that these really behave like regular values. You can juggle them around, put them in lists, etc. and they will do absolutely nothing until one shows up in `main`. Only then, the compiler will make it actually do stuff.
@MercyFromOverwatch2
@MercyFromOverwatch2 2 роки тому
Jeff is still my favourite tech youtuber!
@flash_gif
@flash_gif 2 роки тому
Nice video! Topic suggestions: Elixir and Pheonix?
@kelkiiii
@kelkiiii 2 роки тому
These are so perfect for brushing your teeth. I'm never bored and I get to learn a little something. Very glad I found your channel this year. You've taught me a lot!
@zilog1
@zilog1 2 роки тому
What do you think of the FORTH environment? its a language, OS, interpreter, and IDE all in one. its kinda neat. is used reverse polish notation. old but still cool (unlike COBOL)
@mrrishiraj88
@mrrishiraj88 2 роки тому
Great! Thanks a lot!
@sriramiyer9840
@sriramiyer9840 2 роки тому
Great video!! Try prolog too please. It's a logic programming language
@SEKUNHO
@SEKUNHO 2 роки тому
Btw setting up Haskell’s basic tooling is easy these days. Just grab ghcup and you can manage the compiler/LSP server/build tool versions.
@evanhowlett9873
@evanhowlett9873 2 роки тому
I imagine they stole this idea from Rust.
@johnnyt.2523
@johnnyt.2523 2 роки тому
Ahhh, Haskell and Prolog gave me a really fun semester. :$
@user-hd7ju4wu4b
@user-hd7ju4wu4b 2 роки тому
Please do extended version with explanation of typeclasses, they are really awesome
@ShreksSpliff
@ShreksSpliff 2 роки тому
Hoping that you can do one of these on ROC when it comes out. Partly functional and very fast
@vitaliydidyk8220
@vitaliydidyk8220 2 роки тому
@Fireship What software do you use to make these awesome videos?
@WillWillWill
@WillWillWill 8 місяців тому
great explanation
@JanDalhuysen
@JanDalhuysen 2 роки тому
epic 🔥🔥🔥
@EidosX_
@EidosX_ 2 роки тому
Omg he actually did it
@EvilTim1911
@EvilTim1911 2 роки тому
"Oh wow, that's really interesting" *never uses Haskell in my life*
@AttilaButurla
@AttilaButurla 2 роки тому
Do a deeper dive into functional concepts!
@badrtaddist9083
@badrtaddist9083 2 роки тому
Love your videos..Please do SCALA !
@Kevin-jc1fx
@Kevin-jc1fx 2 роки тому
Haskell looks really scary with it's exotic syntax. Thanks for the good video.
@brettm4179
@brettm4179 2 роки тому
Great video. Just so you know Haskell has a string type which is literally just an alias for a list of characters
@gritcrit4385
@gritcrit4385 2 роки тому
You can use any other string implementations you want depending on your use case
@detaaditya6237
@detaaditya6237 2 роки тому
Finally! Haskell!
@eddieh7962
@eddieh7962 2 роки тому
Man the Haskell type system is so nice. If the program type checks there is a 95% chance that it works.
@NikiHerl
@NikiHerl 2 роки тому
I am biased, being a tutor for functional programming/Haskell at uni, but... I believe the functional and "immutable by default" paradigm is crucial for going towards bug-free and reusable (re-combinable) code. Yes, it restricts code in certain ways (e.g. no "x = x + 1"), but these restrictions are extremely sensible and they allow a) the programmer to think more clearly (mathematically) and b) the compiler/runtime system to make powerful checks, guarantees and optimizations. For those wondering how incrementing a value a ("x = x + 1") would work in Haskell: You just introduce a new+different name for the new+different value - e.g. "y = x + 1"
@benarcher372
@benarcher372 2 роки тому
The most beautiful and hard way to write top quality software
@ThePotatoChronicler
@ThePotatoChronicler 2 роки тому
Didn't expect this
@user-pq9yh
@user-pq9yh 2 роки тому
Great video as always. Does anyone know what color theme does fireship use in vs code ?
@Rohrschacht
@Rohrschacht 2 роки тому
I'd like to know as well!
@zhotpotrecipe
@zhotpotrecipe Рік тому
Atom one dark
@jonwatte4293
@jonwatte4293 2 роки тому
Question (not criticism)! Given the extremely limited time available (which is a very interesting format, btw!) What's the guiding principle to spend the time on "Haskell is a functional language, and here's where that means in general" versus "here's the Maybe type and, yeah, you can use all the Monad stuff on it!" There's no time set aside for type classes or higher order types, which is where Haskell improves on the world compared to, say, ML or Erlang. What's your goal function for what to include/cut? Would you describe C++ without virtual functions or templates? Or without pointers? Or without standard library? (In fact, I'll go see if there is a C++ one right now!) I'm genuinely curious about the process of squeezing into such a tiny box! (Looking forward to "process of making 100 second videos in 100 seconds!")
@JR-mk6ow
@JR-mk6ow 2 роки тому
Haskell is not half bad. The infinite list / lazy evaluation is truly amazing. The lack of cycles/ having to use recursion/ foldr, etc is a bit crappy but understandable. Way better than Prolog
@joaquinbonifacino6964
@joaquinbonifacino6964 2 роки тому
Exactly for this is why we learned haskell in the second semester in my university, there was a whole subject for this language, graphs, trees, etc..
@EidosX_
@EidosX_ 2 роки тому
It would be my favorite language if it didn't have that many stupid gotchas, such as name collisions, data classes not used enough (Text / String fiasco), strings implemented as linked lists..
@JeyPeyy
@JeyPeyy 2 роки тому
Being restricted is sometimes very important for learning new ways of thinking when tackling a problem, that's why I think it's important for all coders to do some purely functional programming
@sebastiangudino9377
@sebastiangudino9377 2 роки тому
@@EidosX_ What is wrong with string being list in Haskell? I have never faced a problem with that before, i would like to prevent one in the future
@vyole1271
@vyole1271 2 роки тому
I personally find foldr, map, and the like to be way cleaner and easier to reason about compared to writing for (let i; i< 100; i ++){} all the time
@cybrhckr
@cybrhckr Рік тому
I have been using common lisp for a while, and it is the best syntax (including python) for me to understand. Everything I despised in python was not existent in lisp. Coming from there is there any advantage to using haskell other than enforced functional programming paradigms?
@TheMR-777
@TheMR-777 2 роки тому
This reminds me How Powerfully abstracted the Javascript and Even C++ are!
@chudchadanstud
@chudchadanstud 2 роки тому
the madlad finally did it.
@modolief
@modolief 2 роки тому
Ummm .... I don't know if this is asking too much, but could you do Eiffel? This language came along about 20 years ago and attracted a lot of interest due to its concept of *contracts* but it never became popular. I'm curious what other languages picked up from Eiffel.
@Arteafact
@Arteafact 2 роки тому
Scala in 100 seconds would be good to see, Functional programming on the JVM, very cool :)
@callyral
@callyral 4 місяці тому
haskell is making me love math why must it do this to me
@user-zo2sw1xl6f
@user-zo2sw1xl6f 2 роки тому
There is also Clean IDE which is studied in ELTE. Everyone hate this subject although it is pretty fun
@jewpcabra666
@jewpcabra666 2 роки тому
Hearing the word haskell gives me the heebie jeebies from college, but great descriptor. Love how you just completely moved around monads and typing ;) Functors are like mini monads that also sucked
@luuclucas
@luuclucas Рік тому
A function is just any datatype over which you can map a function. iirc the only function you have to implement is fmap :: ( a -> b) -> f a -> f b
@psadi_
@psadi_ 2 роки тому
can you cover apache groovy ? , love this series !!
@firstname9150
@firstname9150 Рік тому
Awesome! Well done! Can you do BQN in 100 seconds? :)
@sebastiangudino9377
@sebastiangudino9377 2 роки тому
Is this an introduction to functional programing for an upcoming "Elm in 100 seconds" video? Or perhaps a prelude to "Clojure in 100 seconds" for the eventual "Clojurescript in 100 seconds"? 🤔🤔🤔🤔
@the34zydc.64
@the34zydc.64 2 роки тому
I looked this up on youtube a couple days ago to see if you did it, and here we are.
HTML in 100 Seconds
2:34
Fireship
Переглядів 619 тис.
The Absolute Best Intro to Monads For Software Engineers
15:12
Studying With Alex
Переглядів 542 тис.
😨Новая Война в GTA 5 Online #shorts
00:40
King Dm
Переглядів 1,6 млн
Best OS for programming? Mac vs Windows vs Linux debate settled
8:41
Lambda Calculus - Computerphile
12:40
Computerphile
Переглядів 996 тис.
The purest coding style, where bugs are near impossible
10:25
Coderized
Переглядів 819 тис.
25 nooby Python habits you need to ditch
9:12
mCoding
Переглядів 1,7 млн
10 regrets of experienced programmers
8:16
Fireship
Переглядів 730 тис.
What is a Monad? - Computerphile
21:50
Computerphile
Переглядів 588 тис.
Comparing 10 programming languages. I built the same app in all of them.
21:33
Reacting to Controversial Opinions of Software Engineers
9:18
Fireship
Переглядів 1,9 млн
Functional Programming & Haskell - Computerphile
9:19
Computerphile
Переглядів 654 тис.
Android top🔥
0:12
ARGEN
Переглядів 421 тис.
Creepy Samsung Alarm cannot be turned off 😱🤣 #shorts
0:14
Adani Family
Переглядів 1,1 млн