Why I Don't Code in Haskell Anymore?

Ғылым және технология

Пікірлер: 356

  • @TsodingDaily
    @TsodingDaily2 жыл бұрын

    How do you like my Data Center?

  • @leongarcia3281

    @leongarcia3281

    2 жыл бұрын

    The best use for an old laptop that served you well for 10+ yrs and has, like, a pentium and 3gb of ram

  • @stevegremory3849

    @stevegremory3849

    2 жыл бұрын

    Hey, look at the bright side! Glowies can't sniff your data!

  • @maxreuv

    @maxreuv

    2 жыл бұрын

    The DataCenter looks a bit like your Haskell comment ;)

  • @bertrodgers2420

    @bertrodgers2420

    2 жыл бұрын

    @@maxreuv Why can't you pay for a VPS, sorry?

  • @lubricustheslippery5028

    @lubricustheslippery5028

    2 жыл бұрын

    @@bertrodgers2420 Probably something to do with living in Russia

  • @VojtaJavora
    @VojtaJavora Жыл бұрын

    As someone who mostly programs in C, any package manager that actually exists is magic to me.

  • @biomorphic

    @biomorphic

    Жыл бұрын

    I feel the pain. Maybe it's time to learn Rust.

  • @niktedig853

    @niktedig853

    Жыл бұрын

    I know your comment is relatively old, but fuck it. I don't really understand why a package manager has any business being attached to a language. It seems like a glaring fuck-up in terms of compartmentalization and modularity. What's the point? The package manager should be separate from the language, like apt is separate from C. Apt works great, install packages, use them from C, it's all good. Why do we need to have a special package manager for a language when it really should be an external tool?

  • @VojtaJavora

    @VojtaJavora

    Жыл бұрын

    @@niktedig853 Hmm, I think I do actually agree with you, but you cannot deny that having the package manager with the compiler is easier to use and more practical.

  • @VojtaJavora

    @VojtaJavora

    Жыл бұрын

    @@niktedig853 also haskell package managers are not attached to the language.

  • @Bbdu75yg

    @Bbdu75yg

    Жыл бұрын

    Isn’t cmake and bazel painful for cc+ development ?

  • @dimator
    @dimator2 жыл бұрын

    Ah, but that is too bad for us, because your old Haskell videos are some of them most informative and important videos I've seen. Monoids, IO monads, your explanations were just 👌

  • @MdImrulHassan

    @MdImrulHassan

    2 жыл бұрын

    +1 to that. I learnt a lot from your Haskell videos on how to use Haskell effectively without getting bogged down by advanced features. However, I only use Haskell for pet projects and offline competitive programming.

  • @driden1987

    @driden1987

    2 жыл бұрын

    @@MdImrulHassan +2 more haskell/scala/lisp please

  • @sebastiangudino9377

    @sebastiangudino9377

    2 жыл бұрын

    @@driden1987 I don't think he used lisp very often. But I do think that lisp is a lot more "Developer Friendly" than Haskell in the way this video points out

  • @driden1987

    @driden1987

    2 жыл бұрын

    @@sebastiangudino9377 Oh no, i don't think it is either. I still want to see more videos from him on those langs :D He did one on clojure which is a lisp dialect in the jvm and he enjoyed it, but it was more for solving a specific codewars problem rather than a whole project on it.

  • @Mutual_Information
    @Mutual_Information2 жыл бұрын

    This was the first time I heard anything about Haskell that wasn’t Haskell propaganda

  • @jawad9757

    @jawad9757

    9 ай бұрын

    Where are you finding this Haskell propaganda, I want it

  • @MattLaine

    @MattLaine

    Ай бұрын

    You clearly haven't read my Quora posts.

  • @youtubepooppismo5284
    @youtubepooppismo52842 жыл бұрын

    a monad is a monoid in the category of endofunctors.

  • @leongarcia3281

    @leongarcia3281

    2 жыл бұрын

    He said the line!

  • @mishikookropiridze

    @mishikookropiridze

    2 жыл бұрын

    Trivial

  • @nicolareiman9687

    @nicolareiman9687

    2 жыл бұрын

    Shit that's easy why do people still don't get it quickly.

  • @birdbeakbeardneck3617

    @birdbeakbeardneck3617

    2 жыл бұрын

    my brain is frying

  • @mishikookropiridze

    @mishikookropiridze

    2 жыл бұрын

    @@nicolareiman9687 It's actualy easy once you know definitions of category, functor, monoid, endofunctor.

  • @HoloTheDrunk
    @HoloTheDrunk2 жыл бұрын

    The "server" that hosts all of my projects is basically two Raspberry Pis connected by a cheap ethernet switch and a lot of hope and prayers 😅

  • @john.dough.
    @john.dough.2 жыл бұрын

    I love these shorter, to the point, videos in addition to the longer ones :)

  • @lonelyfloat2582
    @lonelyfloat25822 жыл бұрын

    As someone who loves programming in Haskell, I can't agree more LMAO

  • @SimGunther
    @SimGunther2 жыл бұрын

    Dependency Roulette is the most fun game for anyone who is tired of C's packaging brilliancy and just want to mess around with XML, JSON, or cabal files guessing which version of which package is compatible only to find out it was out of order. If you were missing stress in your life, this is totally the game for you!

  • @torarinvik4920

    @torarinvik4920

    2 жыл бұрын

    Haha so true! Underrated comment!

  • @redpepper74

    @redpepper74

    2 жыл бұрын

    Maybe I don’t want to learn Haskell

  • @torarinvik4920

    @torarinvik4920

    2 жыл бұрын

    @@redpepper74 its a lot of fun 🙂

  • @redpepper74

    @redpepper74

    2 жыл бұрын

    @@torarinvik4920 I now have stack installed on my computer and am trying to figure out how to use it

  • @torarinvik4920

    @torarinvik4920

    2 жыл бұрын

    @@redpepper74 I found Cabal to be easier.

  • @Axman6
    @Axman62 жыл бұрын

    Have you used Haskell/Cabal recently? Things have improved a lot, and there’s a strong emphasis on making the tooling around the language much better for commercial use. Obviously I’m biased, Haskell has been paying my bills for most of the past decade, but because of that, I have seen the huge effort that’s gone into improving things. It’s also worth remembering Haskell is relatively old, so the designed of tools like Cabal were amazing in their time, but newer languages have made improvements from having a clean slate.

  • @ahmaddynugroho

    @ahmaddynugroho

    2 жыл бұрын

    Are you brainwashed by haskell propaganda?

  • @godnyx117

    @godnyx117

    2 жыл бұрын

    Then why not redesign them? And don't tell me "It's hard". Of course it is, programming is hard! But isn't this what we do?

  • @sohangchopra6478

    @sohangchopra6478

    2 жыл бұрын

    @@godnyx117 I'm sure cabal / stack could be redesigned, but that has two big problems: 1. Backward Compatibility (existing packages have to support Cabal & Stack - now they will also have to support the new, re-designed package manager). 2. Community Fragmentation - there are already big debates around Cabal vs Stack - adding a third option is not going to help.

  • @godnyx117

    @godnyx117

    2 жыл бұрын

    @@sohangchopra6478 1. The oldest problem. Now take my opinion on this with big care. I think that backwards compatibility should never be kept. It keeps projects for truly improving and getting better. This is the approach OpenBSD takes (from what I heard) and the reason that while it's far beyond Linux (at least in regular desktop usage), it's catching up with each version. And that's another reason software have "maintenance". But in any case, people can still use the old version of the project if they want and if they cannot for some reason update. But again, this is just my humble opinion 2. The fact that the community is split between these two says it all! The fact that there is not one tool that the majority of the community likes and uses means that none of them are good enough. So we need to either add a new one (probably not) or re-design on of the existing ones to eliminate its flaws. Again, these are just my opinions, there is no right or wrong. In general, this is the approach I'm thinking to follow with my programming language and its tools.

  • @Axman6

    @Axman6

    2 жыл бұрын

    @@godnyx117 Cabal has been redesigned, significantly, that’s the point I’m making.

  • @ccgarciab
    @ccgarciab2 жыл бұрын

    Doing katas in Haskell is fun and satisfying at least

  • @Ryan-xq3kl
    @Ryan-xq3kl2 жыл бұрын

    rewrite haskell in rust

  • @rogergalindo7318
    @rogergalindo73182 жыл бұрын

    after having spent 20+ hours trying to get a Haskell project working, can confirm, it’s a fucking pain in the ass

  • @harry3life
    @harry3life2 жыл бұрын

    Haskell is not developed by mathematicians. I don't think any of the main GHC developer is a mathematician.

  • @max3446

    @max3446

    2 ай бұрын

    The language is certainly designed primarily by theoretical computer scientists (i.e., mathematicians) though.

  • @harry3life

    @harry3life

    2 ай бұрын

    @@max3446 What does theoretical computer scientist even mean? The entire field is practice basically. I don't think you can call the people implementing a real world production compiler theoretical anything.

  • @max3446

    @max3446

    2 ай бұрын

    ​@@harry3life I'm talking about the backgrounds of those originally involved in the design of the language. Simon Peyton Jones, Philip Walder, etc. All (originally) academics with backgrounds in language design and semantics, so it's natural that the beauty of the language itself will take precence over creating the most convenient tooling (something which from their prespective is/was probably just a necessary evil).

  • @RedStone576
    @RedStone576 Жыл бұрын

    aw man i get into haskell because of your videos. you're totally right about the math folks building languages part

  • @exnihilonihilfit6316

    @exnihilonihilfit6316

    2 ай бұрын

    Impulse person, right?... A year later, you got nowhere, didn't ya? ;-))

  • @vonBottorff
    @vonBottorff2 жыл бұрын

    Haskell seems to be split between super-mathy research people . . . and people who want it to be a working programming language. Alas. And even the mathy stuff about Haskell seems very often one-off and lost-in-the-weeds. Evidence: Bad docs that are not much better than stream of conscience/reference dumps. Haskell needs a big, centralized effort to deal with all this fragmentation. But then there's also this feeling that it's just the temporary "base camp" of some great assault on category theory, that Agda is the true "peak" language. Fragmented and schizoid is Haskell for sure.

  • @beauteetmusculation8191

    @beauteetmusculation8191

    Жыл бұрын

    Good thing you mentioned documentation. That's one of the most frustrating parts of trying to get into Haskell. I don't mind reading a bit of theory, but to the point where you need HOURS to learn how to do something completely abstract which seems like necessary to actually just write simple applications, that's insane.

  • @vonBottorff

    @vonBottorff

    Жыл бұрын

    @@beauteetmusculation8191 There's a lot of programming environments, projects out there where you're pretty much on your own having to read source code. Haskell is definitely like that. I think lots of contributors just think you need to read the code because that's the league you're playing in. So yeah, Haskell is big in the academic world -- and they're not about writing O'Reilly books. I think the "center" of Haskell can be seen in _The Haskell Road to Logic, Maths, and Programming_ by Doets and van Eijck. It's sort of an answer to Paulson's _ML for the Working Programmer_ which is a seminal CS text. _Haskell Road_ really complements the discrete stuff you learn in a CS program.

  • @Adityarm.08
    @Adityarm.082 жыл бұрын

    I never even tried doing anything except abstract problem solving in Haskell despite it being my favourite language of all. Somehow python, go, c++ just naturally feel far better for application development - which sadly is often far from elegant.

  • @timwhite1783

    @timwhite1783

    2 жыл бұрын

    Yeah, I'm starting to think the only way to get things done is to learn to be comfortable with ugly code. You can make it beautiful after it works but lets be honest, you probably won't.

  • 2 жыл бұрын

    @@timwhite1783 "Learn to be comfortable with ugly code". See "Perfect is the enemy of good". And of course, "You can make it beautiful" brings to mind Knuth's "Premature -beautification- optimization is the root of all evil." and the old principle "first make it work, then make it right, and, finally, make it fast" (as quoted from an article in a 1983 issue of BYTE by Stephen Johnson and Brian Kernighan).

  • @jadetermig2085

    @jadetermig2085

    6 ай бұрын

    Haskell being your favorite language despite not having done anything besides "abstract problem solving" in it, tells me you're just fangirling over it and it's not a serious or substantive opinion.

  • @Adityarm.08

    @Adityarm.08

    6 ай бұрын

    @@jadetermig2085 thank you internet stranger for reminding me that my opinion is invalid & my experience irrelevant :)

  • @samuraijosh1595

    @samuraijosh1595

    5 ай бұрын

    ​@@jadetermig2085 and your comment tells me you've never used Haskell or have the IQ to use Haskell. A Haskell enthusiast might not be able to get an actual production ready app out not because he doesn't have any experience in production or enough experience with Haskell but it has more to do with the poor ecosystem and tooling of Haskell.

  • @totalmonkeyspeed260
    @totalmonkeyspeed260 Жыл бұрын

    You defined an opportunity: create a maintainable Haskell.🙂🙏

  • @Czeckie
    @Czeckie2 жыл бұрын

    as a mathematician: how do you dare to be this right?!

  • @abraund
    @abraund9 ай бұрын

    How amusing, I'm using your parser as a project to orientate myself into how you actually go about development, and here you refute the language. Ultimately I suppose most people who wish to work in Haskell are more interested in a new way of thinking, rather than creating working solutions.

  • @samuraijosh1595

    @samuraijosh1595

    5 ай бұрын

    If you can somehow make your way out of the build process and packaging mess, sure you can get something working. I myself am trying to use Haskell as backend server script, tried multiple Haskell wed frameworks, only one was easy to quickly set up and get some work done right off the bat. As he says, such an elegant sexy language but God awful tooling.

  • @woobilicious.
    @woobilicious.2 жыл бұрын

    What don't you like about the tooling (if that's what you mean?) Poorly documented libraries to me seem the worst aspect, trying to write in any language, except maybe C, these days seems to have a tooling issue in general where you're overloaded with choice and can't just do some coding. Nix could probably solve your issues, and introduce a whole bunch more :P

  • @TsodingDaily

    @TsodingDaily

    2 жыл бұрын

    I like when people answer their own questions.

  • @kopuz.co.uk.

    @kopuz.co.uk.

    2 жыл бұрын

    @@TsodingDaily hypophora

  • @MyAce8

    @MyAce8

    2 жыл бұрын

    as someone who uses nix. You only start to make back the time invested in nix once you use it for everything and idk if it will be worth it for most people without many more years of maturation unfortunately

  • @ribosomerocker

    @ribosomerocker

    2 жыл бұрын

    as someone who uses nix... dont use nix. do yourself a favour.

  • @victorandreverdipereira7440

    @victorandreverdipereira7440

    9 ай бұрын

    ​@@ribosomerockerwhy?

  • @myfavouritecolorisgreen
    @myfavouritecolorisgreen2 жыл бұрын

    No one gets to hate on Haskell, except for the ones that love it. So yeah, you are allowed to hate on Haskell.

  • @beauteetmusculation8191

    @beauteetmusculation8191

    Жыл бұрын

    I hate it as much as I love it. Best language, biggest missed opportunity.

  • @MasthaX
    @MasthaX Жыл бұрын

    I never coded much Haskell myself like you did, though I did read allot about it and watched your videos amongst many others because the language is really nice like you noted. I seem to never actually used it practically for the same negative reasons as you pointed as well. There are just too much good alternatives to use out there which are usually far easier to learn and are far more practical to use. Nevertheless I enjoyed your Haskell videos and learned quite a bit more about how it all works.

  • @sky_kryst
    @sky_kryst2 жыл бұрын

    Interesting point you make there. I just got into functional programming a year back, explored elixir. Felt disappointed for lack of type system. Was peeking my interests in Haskell, although it was ocaml first. What functional programming language would you recommend for backend use?

  • @cat-.-

    @cat-.-

    2 жыл бұрын

    Scala, Closure, F# are used a lot in “the real world”. Other brilliant, more elegant languages abound but suffer from similar problems with Haskell.

  • @jamesgood7894

    @jamesgood7894

    2 жыл бұрын

    I’ve felt that same want coming from Elixir. I tried using Crystal, you can do functional programming, but it’s not immutable by default; if I remember correctly, there are mutable and immutable update functions for arrays, and I always just used structs and instantiated a new one. I haven’t gotten around to doing performance tests. Other than than, I just saw the Kotlin library Arrow, which seems to have a similar feature set as scala’s Cats library, supporting monads and for comprehensions, optics, etc. Ahh, I also wanted a language that could just compile to an executable, and it seems there’s kotlin native which can support that, rather than having to run it on JVM.

  • @deidyomega

    @deidyomega

    2 жыл бұрын

    Second F#, its not the best, but its great because it works with the entire dotnet ecosystem and tooling.

  • @digitalspecter

    @digitalspecter

    Жыл бұрын

    I'm doing backend stuff with F# at the moment, it's not half bad. That being said, have you looked at IHP (Integrated Haskell Platform)? I've only played around with it but it's very cool platform... and their focus is very much on getting stuff actually done with it :)

  • @anderdrache8504
    @anderdrache85042 жыл бұрын

    That's why I'm excited about Roc.

  • @scvnthorpe__
    @scvnthorpe__2 жыл бұрын

    In retrospect its the kind of thing you want to be using for like, a microservice or something that intuitively doesn't deal in side effects. So for spam filtering for example it's actually spot on.

  • @maithilijsk7698
    @maithilijsk76982 жыл бұрын

    Do you use any different keyboard or just remap the keys with xmodmap or something. Because I have seen you using Emacs so fast. Just share with use. If you rebind the keys tell us which one. You are awesome btw

  • @jawad9757
    @jawad9757 Жыл бұрын

    I really hope there is an achievable solution for Haskell's toolchain

  • @davidyanceyjr
    @davidyanceyjr2 жыл бұрын

    It's a crime, I have tried many ways to use haskell in my current project- I too love the language. I've resorted to Nix as a last ditch effort.

  • @birdbeakbeardneck3617
    @birdbeakbeardneck36172 жыл бұрын

    are you intrested in maintaining a repo of a programming language inspired by Haskell, but is well engineered as well?

  • @breakprismatshell6270
    @breakprismatshell62702 жыл бұрын

    oh man I feel you.. both cabal and stack really suck ... Personally though this is worth it in exchange for the language itself, but people might differ on that. Worse to me is that fact, that it's so difficult to estimate and optimize for resource usage in haskell, because it is so abstract.

  • @Adam-yf2ux
    @Adam-yf2ux2 жыл бұрын

    Your IO Monad video was the only one that sunk in. I watched like 100s of them btw :)

  • @oliveiracaio57
    @oliveiracaio572 жыл бұрын

    What's your favorite language for functional programming?

  • @scalacode

    @scalacode

    Жыл бұрын

    Scala

  • @IronicHavoc
    @IronicHavoc3 ай бұрын

    Haskell is very fun to learn and then apply the stuff you learned somewhere else

  • @hulucius1479
    @hulucius1479 Жыл бұрын

    The real issue of Haskell is not really its type system or its language concepts, but its toolchain….

  • @Boxing_Gamer

    @Boxing_Gamer

    Жыл бұрын

    The many weird symbols are also annoying..a few would have been enough, like the dot operator and the dollar operator. But when people start defining their own symbols which are often just chains of other symbols it becomes too difficult for most people .

  • @samuraijosh1595

    @samuraijosh1595

    5 ай бұрын

    ​@@Boxing_Gamernot difficult at all. Get back to your haskell textbook and put in the effort.

  • @Boxing_Gamer

    @Boxing_Gamer

    5 ай бұрын

    @@samuraijosh1595 it's not difficult when you made it yourself but when you look at other people's code it can be. Some code I've had to give up on understanding.

  • @samuraijosh1595

    @samuraijosh1595

    5 ай бұрын

    @@Boxing_Gamer oh sorry I misread your comment, I read it as just too many symbols. I agree, abusing the symbol functions meta programming because it's fun or makes aesthetic sense to you personally is awful.

  • @MurderByProxy
    @MurderByProxy6 ай бұрын

    lol finally managed to finish one of this dudes videos

  • @emszamot
    @emszamot Жыл бұрын

    Could you elaborate what problems with cabal you had?

  • @vikinggeorge7007
    @vikinggeorge7007 Жыл бұрын

    Roc is on the way man, and damn it does look promising

  • @straw4320
    @straw43202 жыл бұрын

    Completely agreed. I wish we have 1/10 compilation time and a 30-second quick project/IDE setup in Haskell.

  • @deidyomega

    @deidyomega

    2 жыл бұрын

    compile time doesn't really bother me in haskell, but sweet baby jesus does package management need to be fixed.

  • @Lin_The_Cat_
    @Lin_The_Cat_ Жыл бұрын

    I think Haskell is an interesting and expressive language, but I gotta agree that maintenance, from my limited experience in it, does seem like a nightmare. The error messages can be very obfuscated, like with how it says there's a type error in a function for example, as well as just the syntax of the language can be a bit difficult to read coming from the imperative side of the programming world.

  • @spartanA01

    @spartanA01

    8 ай бұрын

    The things you described have nothing to do with what makes Haskell maintenance difficult, but ok. Type errors are one of the main benefits that help with refactoring of Haskell codebases that other languages do not provide in the same level of detail.

  • @samuraijosh1595

    @samuraijosh1595

    5 ай бұрын

    Wrong justification for the right complaint. Resolving type errors are not the problem, the type errors being so elaborate is part of the intended design. You need to learn about typeclasses and how type meta programming works in general and you'll love those type errors in the long run. The problem actually lies with the poorly managed libraries and tooling and packaging

  • @WilliametcCook
    @WilliametcCook2 жыл бұрын

    Tried to implement a programming language in Haskell but I could never figure out I/O :P

  • @aesthetic3777
    @aesthetic37772 жыл бұрын

    Opinion on OCaml? And how long will it take to learn it to intermediate level? (self-study)

  • @galtrapecar2702

    @galtrapecar2702

    2 жыл бұрын

    There is really not enough documentation so the majority of the learning you spend trying to figure out why and how something works. Personally I like to build things and OCaml is not suited for that. It’s great for learning in college classes but if you’re going to learn a langage why not go with something more modern/used. As for the time it takes to learn I’ve had it this semester and at the end of the year I still don’t get everything to the point where it feels comfortable.

  • @xybersurfer

    @xybersurfer

    Жыл бұрын

    how about learning F#? it is based on OCaml, but the advantage is that it has the .NET ecosystem including Visual Studio (not Visual Studio Code) for debugging. also .NET Core is now open source and cross platform

  • @janruysch6612
    @janruysch6612 Жыл бұрын

    Can you recommend any books about haskell?

  • @TheRealisticNihilist
    @TheRealisticNihilist2 жыл бұрын

    I feel the fuck out of this pain. I LOVE Haskell but I've never had more problems with a language's implementation mechanics except, of course, Java (because I refuse to use intellij or eclipse).

  • @jordanmcconnon6214

    @jordanmcconnon6214

    Жыл бұрын

    Yeah java without IDE is hell. Glad i never have to look at that shite again

  • @Boxing_Gamer

    @Boxing_Gamer

    Жыл бұрын

    I think emacs and language servers will give you a nice java idea. So far I've used emacs with rust, elm and csharp and it worked perfectly. Even has refactoring and goto definition etc. For a much easier learning curve you could use spacemacs.

  • @Caldera510
    @Caldera5102 жыл бұрын

    I also love Haskell...but I don't use it anymore for similar reasons.

  • @wlcrutch
    @wlcrutch Жыл бұрын

    So…what is a good alternative to Haskell? Something that enhances functional style and with an elegant syntax yet isn’t a pain in the ass for packaging/building? I agree, stack and cabal seem like they were created by HS students…

  • @CHR1SZ7

    @CHR1SZ7

    6 ай бұрын

    Scala will let you do whatever abstract functional stuff you like (with a few different flavours of that e.g Cats, ZIO, etc.) but as a jvm language it can piggyback on much of the enormous java tooling ecosystem. The syntax is not as mathy as haskell but is very expressive and generally clean

  • @samuraijosh1595

    @samuraijosh1595

    5 ай бұрын

    ​@@CHR1SZ7Scala syntax is ugly lmao

  • @max3446

    @max3446

    2 ай бұрын

    OCaml isn't as elegant as Haskell but its tooling is certainly a lot better.

  • @rezamirhosseini1369

    @rezamirhosseini1369

    2 ай бұрын

    Maybe Erlang?

  • @cesarfigueroa6119
    @cesarfigueroa6119 Жыл бұрын

    any thoughts on purescript?

  • @crides0
    @crides0 Жыл бұрын

    Not sure about Haskell, but people say that Go is a write only language, and I think that's very true. Good for maintenance? Probably not

  • @xravenx24fe
    @xravenx24fe2 жыл бұрын

    The amount of info online that potential Haskell programmers dig through just to learn the tool chain and language is so fickle it's ridiculous. It's terribly hard to find up to date learning materials and parts of the tool chain are frequently deprecated or replaced and documentation just doesn't keep up. I remember Haskell Platform or w/e it was was the de facto toolchain, then Cabal, now Stack which still uses Cabal somewhere, and God knows what it's going to be next lol.

  • @vadymbiliuk1505

    @vadymbiliuk1505

    2 жыл бұрын

    Because u need to learn things better. U didn't use Cabal for package managment. It was cabal-install actually. And Cabal is a library which Stack uses, yeah

  • @softwarelivre2389

    @softwarelivre2389

    2 жыл бұрын

    I sense strong JS development vibes here lol

  • @vadymbiliuk1505

    @vadymbiliuk1505

    2 жыл бұрын

    @@softwarelivre2389 and good salary

  • @jboss1073

    @jboss1073

    Жыл бұрын

    GHCUP is next.

  • @Michal_Peterka
    @Michal_Peterka2 жыл бұрын

    Did you try F#?

  • @oShinobu
    @oShinobu2 жыл бұрын

    This is so relatable

  • @slowpnir
    @slowpnir2 жыл бұрын

    _Stares in silence_

  • @andyl.5998
    @andyl.59982 жыл бұрын

    Hope you're doing well, man. You look so different now from yourself on the main channel.

  • @mariobroselli3642
    @mariobroselli36424 ай бұрын

    Haskell Videogames would be painful😮😢

  • @masterlup
    @masterlup6 ай бұрын

    what do you recommend instead of Haskell?

  • @samuraijosh1595

    @samuraijosh1595

    5 ай бұрын

    As in something that gives the feel of Haskell but with better tooling?

  • @masterlup

    @masterlup

    5 ай бұрын

    @@samuraijosh1595 no as in: What are you using instead of Haskell and how is it better.

  • @ProjectVastness
    @ProjectVastness11 ай бұрын

    What about using something like F#?

  • @neroamayo6345
    @neroamayo63452 жыл бұрын

    What is the font he is using on his terminal. Can anyone tell ?

  • @user-jw4lr3mq7y

    @user-jw4lr3mq7y

    Ай бұрын

    Iosevka

  • @rodU65
    @rodU652 жыл бұрын

    Odd. This video was recommended after I spend days studying for my mathematics finals. I never looked anything in KZread about Haskell.👽

  • @JT-mr3db
    @JT-mr3db2 ай бұрын

    I love Haskell, it’s incredibly fulfilling to be productive in it but it’s true that it’s a complete PITA. When I picked up Go i realized what a completely abusive relationship I was in with Haskell.

  • @insidetrip101
    @insidetrip101 Жыл бұрын

    cabal (haven't used stack), does suck. However, I think it sucks because its way too involved. You should be able to just say you want package x, and then run package x, but because everything is so hooked to their dependency versions and so many customizable options, it is really really hard to use and a huge pain in the ass. That's not to say it can't work correctly, but it is to say that I've spent at least as much time just learning how to work with cabal as I have having to learn about haskell. The expectation for the developer to get cabal to work right is just too involved, however, I do think a lot of this can be solved simply by containerization. This doesn't solve maintainability and upgrading packages, which is kind of its own beast, but at least you don't end up with hundreds of competing dependencies in a global environment.

  • @samuraijosh1595

    @samuraijosh1595

    5 ай бұрын

    Yeah I've not been able to install popular Haskell backend frameworks because of stupid Cabal, it complains complains, complains about shit than actually getting shit done.

  • @torarinvik4920
    @torarinvik49202 жыл бұрын

    I've been learning Haskell for some time now, and you just read my mind. I couldn't agree more. The language is awesome, but the ecosystem particularly Cabal and Stack as you mentioned is so unreliable its almost broken. And just like you said the creators of Haskell care much, much more about language design than useful tools. I've been having so much trouble with cabal it's not even funny. I use Haskell for prototyping and other languages to code in. Swift has so amazing support for functional programming that I can almost directly translate all the Haskell code. Now I cant really put all the blame on the Haskell designers since Haskell has a healthy community the experienced users should also contribute if they want the language to become more popular. Pharo Smalltalk has a tiny community and they have been able to create an incredibly impressive IDE far more impressive than anything I have seen in the Haskell world.

  • 2 жыл бұрын

    Haskell was, is, and probably will forever be a research language first and foremost. Well, all functional languages are research languages more (much more) than practical languages. You go through a lot of pain, to get… what exactly? I tried my hand at studying computer science (at university, for real). And we did functional programming (in StandardML I think)… the goal was to *prove* programs correct, but I don't see that happening, not on a scale that is useful. And I also doubt it can even *really* be done what with a) side-effects (which you need to have to do IO) and b) the halting problem. Sure, you can prove parts of software correct. But is that such a huge benefit? But in the end, the biggest problem for functional programming (pure functional, but also non-pure, like Lisp or Scheme) is that it goes against our "natural" way of thinking, against the way most people's thought processes work. It's hard enough for most folks to get into a programming mindset. And then they expect those to start to think *functional*? No way, Jose.

  • @torarinvik4920

    @torarinvik4920

    2 жыл бұрын

    @ That was an amazing post! I agree 100%. Its basically correctness vs ease of use.

  • @firelights3675

    @firelights3675

    Жыл бұрын

    @ to me functional is the "natural" way of thinking. You type out functions that transform inputs inside out, you tell exactly what to do. The only disadvantage is there's a lot more base functions, but for example expressing "sumList = fmap (+)" instead of needing to declare local variables and a for loop

  • Жыл бұрын

    @@firelights3675 To you, and good for you. But to *most* people it's completely foreign (as I said). Look for people complaining that math is hard, or that math sucks, and how many people can be seen to agree. All joking how bad they were at math and that nobody needs it (and then getting the wool pulled over their eyes thanks to their ignorance and innumeracy).

  • @Boxing_Gamer

    @Boxing_Gamer

    Жыл бұрын

    @ yeah once people have been programming in oop for some time, it's hard for them to break free from that thought process. But I wonder how hard fp would be to learn if it was your first language?

  • @AnarchySane
    @AnarchySane2 жыл бұрын

    Somewhere Bragilevsky and Granin began to cry(

  • @AlexanderGranin

    @AlexanderGranin

    2 жыл бұрын

    Well :)) Actually I support the main points of the video. I have a long storry fighting with the overall lack of engineering in Haskell, and I can confirm that the propoganda exists. In fact, it's based on the ideology that Haskell is a superior language, and Haskellers are doing well. Unfortunately, it's prohibited to openly talk about problems (social mostly, technical secondly). I hate to say that, but for decades, the most powerful camps of Haskell were demonstrating the lack of pragmatism and knowledge in software engineering. Also, self-isolation ideology from the outside (mainstream) world was an obstacle to see the ignorance. Despite that, Haskell managed to get some traction of software engineering and attracted some businesses, although these pragmatic people rarely sound in the community as the core believers that math is everything. That's my long-term staying opinion. P.S. Thank you for mentioning me and Vitaly!

  • @nolanfaught6974
    @nolanfaught69749 ай бұрын

    As a mathematician, I wouldn’t dream of using Haskell. Julia is another language designed by mathematicians and it manages to look elegant without sacrificing functionality

  • @window.location
    @window.location2 жыл бұрын

    I tried to install pandoc recently, oh god it tried to pull hundreds of Haskell packages, I had to scroll my terminal to see full log.

  • @SimonClarkstone
    @SimonClarkstone2 жыл бұрын

    The second half of this video is a good point about how Haskell's nice maths is held back by problems with the software engineering side. (I myself haven't used it for like 15 years.) It has become a great place to copy ideas from. The first half of the video is at risk of repelling people who need to hear the second half by calling them lying and brainwashed. I can tell you weren't trying to convince any Haskell fans. :-)

  • @TsodingDaily

    @TsodingDaily

    2 жыл бұрын

    > The second half of this video is a good point... I'm glad you liked my Data Center!

  • @SimonClarkstone

    @SimonClarkstone

    2 жыл бұрын

    @@TsodingDaily Hehe, that too.

  • @mariobroselli3642
    @mariobroselli36424 ай бұрын

    Racket vs OCaml?

  • @anisometropie
    @anisometropie Жыл бұрын

    Is it something that can be fixed ? I mean, is it just because there not enough tools that make your life easier (Like in JavaScript, nvm, yarn and shit ) or is the language fundamentally unrecoverable ?

  • @samuraijosh1595

    @samuraijosh1595

    5 ай бұрын

    The language is fine. The tooling, libraries, community support, ecosystem is bad.

  • @christophervalerio5964
    @christophervalerio5964 Жыл бұрын

    Learning haskell... I feel the pain of stack and cabal, specially coming from Rust :) cargo just works.

  • @musdevfrog
    @musdevfrog2 жыл бұрын

    man spitting facts.

  • @FDominicus
    @FDominicus11 ай бұрын

    Just curious why don't you give Ocaml and F# a try? I'd like you to do stuff with that.

  • @FDominicus

    @FDominicus

    10 ай бұрын

    I'm sorry, you did havn't seen it in your channel because I'm sometimes a bit too dumb.

  • @alexanderskusnov5119
    @alexanderskusnov51192 жыл бұрын

    А как же ваш коллега Александр Гранин? Использовал Free Monads и все дела.

  • @AlexanderGranin

    @AlexanderGranin

    2 жыл бұрын

    Хехехе :) Ну, я смею думать, что делаю это вопреки всем возможным идеологиям Хаскеля, и развиваю альтернативный взгляд на то, чем может быть этот язык и практика его применения. Это гораздо глубже, чем просто использовать фри монады, это прагматизм и инженерный подход. P.S. Я рад, что вы обо мне вспомнили :)

  • @herrkrake8106
    @herrkrake81062 жыл бұрын

    I feel you brother! Gods damned already properly installed library can't be found by GHC for fuck sake! Going to ditch xMonad and Haskell.

  • @FDominicus
    @FDominicus10 ай бұрын

    I now can understand. I 'd give it a try and then I run into trouble with stack, I had to fall back to cabal and the joke is the .cabal file is overwritten if one uses stack and so I have a package manager which can give me an file for the cabal build system but I can not use the package manager to build it really. That sucks ...

  • @willmcpherson2
    @willmcpherson22 жыл бұрын

    Haskell tooling is certainly better than C and C++, but not as good as Rust and JavaScript. Fortunately it's steadily improving

  • @friedrichwaterson3185
    @friedrichwaterson31852 жыл бұрын

    As Napoleon used to say, "With philosophers, you cannot do anything" or something like that

  • @DavidEngelen
    @DavidEngelen2 жыл бұрын

    Cardano stans SEETHING rn

  • @yecinemegdiche3202
    @yecinemegdiche32022 жыл бұрын

    It's hard for me to say, but many things around Haskell are really a pain...

  • @michaelmueller9635
    @michaelmueller96352 жыл бұрын

    Monads were causing too much headache xD xD xD

  • @simplehaskell4949

    @simplehaskell4949

    Жыл бұрын

    Imo, the way monads are explained is often way too abstract, but in use they click and its really just "oh I can ignore this wrapper" unless you want to write a research paper lol. Have you tried learning parsers? Personally that's when monads clicked for me.

  • @alaindevos4027
    @alaindevos40279 ай бұрын

    Why don't use F# or Ocaml

  • @aradarbel4579
    @aradarbel45792 жыл бұрын

    the fault is not in the language, it's in the users. it's too elegant for us mortals and our pity production uses

  • @TsodingDaily

    @TsodingDaily

    2 жыл бұрын

    I also have another Haskell rant regarding some people overusing custom operators for no good reason, and turning the language into a shitshow despite Haskell having very simple syntax at its core. But that's a story for another time.

  • @meanmole3212

    @meanmole3212

    2 жыл бұрын

    Just how Bjarne said C++ is great language for experts. Unreal cope.

  • @akaalkripal5724
    @akaalkripal57249 ай бұрын

    What happened to frege?

  • @paulcosma2823
    @paulcosma28232 жыл бұрын

    I had the same experience with Haskell sadly. A beautiful language with crappy tooling

  • @SebastianPereira
    @SebastianPereira2 жыл бұрын

    Don't let the Cardano guys hear that.

  • @shutterrecoil
    @shutterrecoil2 жыл бұрын

    Package deps with nix package manager

  • @philipkaim7447
    @philipkaim7447 Жыл бұрын

    "Porn Folder: 9.2 GiB" 🧐

  • @Zetornator
    @Zetornator2 жыл бұрын

    Thank you!! Finally i can send this to my professor so he can fck off and pass me.

  • @Axman6

    @Axman6

    2 жыл бұрын

    If you’re learning Haskell at university, you’re not running into any of the problem Tsoding is talking about.

  • @alexlangevin8340
    @alexlangevin8340 Жыл бұрын

    Haskell is fun :P

  • @taylorallred6208
    @taylorallred62082 жыл бұрын

    I love Haskell as a language for things like niche problems but any time I try to build a larger project I don’t enjoy it very much. I tend to get lost in the details of the implementation instead of just making something that works.

  • @cat-.-

    @cat-.-

    2 жыл бұрын

    Module system is so bad honestly it should be remade because the language is so good. I gave up the idea before even getting to cabal because when I see how modules worked I knew immediately what it would be like to build large, practical projects with it Still a brilliant language and I don’t regret spending time on it one bit.

  • @samuraijosh1595

    @samuraijosh1595

    5 ай бұрын

    ​@@cat-.- are modules the problem or how cabal handles modules the problem?

  • @cat-.-

    @cat-.-

    5 ай бұрын

    @@samuraijosh1595 implicit importing unqualified symbols from other NS is what made me die inside, but on retrospect this should not have stopped me from learning it, there are acceptable import patterns that solve that problem

  • @overclucker
    @overclucker2 жыл бұрын

    It's quite beefy!

  • @correaswebert
    @correaswebert2 жыл бұрын

    too smol PepeHands 🤣

  • @TsodingDaily

    @TsodingDaily

    2 жыл бұрын

    It is what it is

  • @aly-bocarcisse613
    @aly-bocarcisse6132 жыл бұрын

    I say to people myself that Haskell is not production friendly. So I cannot say I do not see where you’re coming from. Haskell tooling has improved tremendously in this last 5/7… Saying that it has not been “engineered properly” is going to far IMHO. Also, Go ? I mean come 🤣

  • @bibliusz777
    @bibliusz777 Жыл бұрын

    do u know Unison?

  • @ShawnShaddock
    @ShawnShaddock5 ай бұрын

    If you think the Haskell tool chain in a pain in the ass, why not develop some tools to make it better?

  • @kratanuva725
    @kratanuva7252 жыл бұрын

    Cabal and Stack are a pain in the ass... Compared to what? Stack and Cabal are the best package managers I've used outside of cargo. I'll take them over gradle any day.

  • @meanmole3212

    @meanmole3212

    2 жыл бұрын

    yes but cargo is heaven

  • @pleasetakemyadvice
    @pleasetakemyadvice2 жыл бұрын

    you are right in fact Haskell is not been invented but discovered, so yes mathematicians are not good at building programming languages but are very good at discovering them

  • @lubricustheslippery5028

    @lubricustheslippery5028

    2 жыл бұрын

    You stepped in a big can of worms. Is math invented or discovered? I am on the invented side...

  • @pleasetakemyadvice

    @pleasetakemyadvice

    2 жыл бұрын

    @@lubricustheslippery5028 kzread.info/dash/bejne/fIGEmMmCZdCyeMY.html

  • @lubricustheslippery5028

    @lubricustheslippery5028

    2 жыл бұрын

    @@anonymousalexander6005 Or you just come up with a system that is internally coherent. It's questionably if math even try to describe nature/reality in a similar way that natural science as Physics, chemistry and biology do. It's strange how good some advanced and esoteric mat is as a tool/language for the Natural science.

  • @jboss1073

    @jboss1073

    Жыл бұрын

    @@lubricustheslippery5028 Two different people who never talked to each other, several times in history, have discovered the same mathematics. When have you ever seen two people with the same opinion?

  • @lubricustheslippery5028

    @lubricustheslippery5028

    Жыл бұрын

    @@jboss1073 It have happened several times that different people have come up with similar and wrong physics theories independent from each other. They have probably read the same books and have similar math backgrounds. Like we hav 10 fingers so we use the base 10 for numbers. So that is at least an covergent math because of human physiology not some fundamental math fact.

  • @coder8515
    @coder85156 ай бұрын

    Agree

  • @fulcanelly
    @fulcanelly Жыл бұрын

    why don't you write own haskell implementation then ?

  • @pyogomushroom
    @pyogomushroom2 жыл бұрын

    Yeah, I totally agree with you. The Haskell development environment is the worst in the world. If you've ever experienced a rust analyzer, the bloody experience of a haskell language server would want to put Haskell in the trash right away

  • @veerasivarajan6736
    @veerasivarajan67362 жыл бұрын

    Hi, I really admire your work. Could you please tell me how you create the thumbnails for your videos? They look so crisp and to the point. Thanks

  • @ivanjermakov
    @ivanjermakov2 жыл бұрын

    Too bad there is no viable alternative being pure functional typed language with a better tooling

  • @explosionspin3422

    @explosionspin3422

    2 жыл бұрын

    Purescript gang

  • @khodis2002

    @khodis2002

    2 жыл бұрын

    OCaml?

  • @tylert2413

    @tylert2413

    2 жыл бұрын

    F# is probably the closest to that ideal. Large ecosystem, IDE, tooling.

  • @andrescamilo7406

    @andrescamilo7406

    2 жыл бұрын

    Elixir?

  • @Axman6

    @Axman6

    2 жыл бұрын

    Unison is definitely worth looking at, it’s pretty revolutionary.

Келесі