the world's best programmer approves of haskell, dunks on lisp

summary:
>rewriting the original wolfenstein in haskell went well
>a pure functional event system is neat
>strong static typing good
>lisp is overrated but scheme is kinda cool

POSIWID: The Purpose Of A System Is What It Does Shirt $21.68

DMT Has Friends For Me Shirt $21.68

POSIWID: The Purpose Of A System Is What It Does Shirt $21.68

  1. 1 month ago
    Anonymous

    >2013

  2. 1 month ago
    Anonymous

    It would be interecting to send him this vid and ask him for opinion on haskell decade later

  3. 1 month ago
    Anonymous

    Learn Erlang

  4. 1 month ago
    Anonymous

    why does he always sound like he has a cold?

    • 1 month ago
      Anonymous

      cocaine

  5. 1 month ago
    Anonymous

    Nice, now post a text editor written in Haskell.

    • 1 month ago
      Anonymous

      yi https://github.com/yi-editor/yi
      idk if there's anything actively maintained

      • 1 month ago
        Anonymous

        So this is the power of Haskell...
        >Nov 3, 2017
        https://github.com/yi-editor/yi/releases

        • 1 month ago
          Anonymous

          t. updooter

  6. 1 month ago
    Anonymous

    git for haskell wolfenstein plz?

  7. 1 month ago
    Anonymous

    Make the Classy Prelude or the Foundation prelude the default already, you purely functional morons.
    I refuse to write in a language where I need external packages to get bytestrings, an array with constant access time, or even a string type that isn't a fricking linked list of characters. Languages with toy standard libraries are toys themselves. Yes, this goes for Scheme too.

    • 1 month ago
      Anonymous

      The prelude honestly isn’t that bad. For example, Data.List gives you a lot of operations for streaming (since lazy lists are streams) and you get all sorts of useful utility functions in various parts of the prelude

      • 1 month ago
        Anonymous

        It's very bad. It gives you dozens of ways to slice and dice lists, but it lacks the most basic stuff for every-day programming: a good string type, a good bytestring type, hashtables or another map type. That makes it an academic toy. And btw, Haskell practitioners use conduit or pipes instead of lazy lists anyway, to guarantee constant memory.

        • 1 month ago
          Anonymous

          list and stream manipulation is arguably a more important functionality than hashtables. in that sense, the haskell stdlib is better than most

          • 1 month ago
            Anonymous

            >haskell stdlib is better than most
            No it's not, you total moron. You have to use external packages for the most elementary practical stuff like bytestrings, or string manipulation that isn't extremely inefficient. You need extra libraries just to get what's in base Python - not any imported libraries, just the core language without any imports.
            God, why is this board full of morons who deny the most obvious flaws in things they like? You can like things while admitting their flaws but it seems like nobody on IQfy understands this anymore. It used to be just Wayland and Rust shills, but looks like it's expanding.

          • 1 month ago
            Anonymous

            You know what, sorry for getting so heated. I was seething a bit from another thread.
            t.

            >haskell stdlib is better than most
            No it's not, you total moron. You have to use external packages for the most elementary practical stuff like bytestrings, or string manipulation that isn't extremely inefficient. You need extra libraries just to get what's in base Python - not any imported libraries, just the core language without any imports.
            God, why is this board full of morons who deny the most obvious flaws in things they like? You can like things while admitting their flaws but it seems like nobody on IQfy understands this anymore. It used to be just Wayland and Rust shills, but looks like it's expanding.

      • 1 month ago
        Anonymous

        >since lazy lists are streams
        They're insanely inefficient streams.

        • 1 month ago
          Anonymous

          They're not actually that inefficient. Haskell stdlib sucks, but on that part you're wrong.

          • 1 month ago
            Anonymous

            They're incredibly inefficient since many of the default combinators don't fuse in non-trivial cases and Haskell's default prelude includes list functions that aren't even safe. The default Haskell prelude is extremely bad.

          • 1 month ago
            Anonymous

            Hm. I thought that fusion worked well these days, but maybe I was wrong. What do you use instead? conduit?

          • 1 month ago
            Anonymous

            I use conduit in most cases.

          • 1 month ago
            Anonymous

            Do you know why Haskellers are so tolerant of their shitty standard library situation and why they're having such a hard time changing it? It boggles my mind. In most languages, if I told people that to write my project reasonably, I had to use a custom preprocessor and replace the entire standard library, they would think that something is very wrong either with me or the language. In Haskell, it's normal for a large project to enable a litany of language extensions and write its own prelude. Nobody is even surprised by this, and nobody sees it as the huge indictment of the language that it is.

            Why is that? C has a dozen compilers and probably a billion lines of crap legacy code that has to keep running at all costs. Yet they still managed to standardize lots of commonly used extensions in C23. Haskell has one compiler that matters and little code in production. How come they can't get their shit together and replace the standard library? It wouldn't even be that hard, everyone knows the major pain points like string handling. Or frick it, just give the Prelude to Snoyberg for a redesign. Tell Snoyberg that his task is to make a new Prelude for production programming and that the Haskell Foundation will pay for his time. He'd probably take up the offer and I'm sure that the result would be miles better than Haskell's current state.

          • 1 month ago
            Anonymous

            The only other language I can think of that was ever in such a bad situation is D, and not even a rewrite by Andrei Fricking Alexandrescu fixed it. He gave up to get money thrown at him by nvidia.

          • 1 month ago
            Anonymous

            The people that run Haskell don't care about real world use. They're more interested in theory and making interesting language extensions.

          • 1 month ago
            Anonymous

            > Do you know why Haskellers are so tolerant of their shitty standard library situation and why they're having such a hard time changing it?
            It’s a lot easier to just have people set their preferred prelude using cabal
            > In Haskell, it's normal for a large project to enable a litany of language extensions and write its own prelude. Nobody is even surprised by this, and nobody sees it as the huge indictment of the language that it is
            Other languages have this, too. See: experimental features & compiler-specific extensions.
            >why not have snoyberg do it
            He already did and created rio

    • 1 month ago
      Anonymous

      Arrays are a part of haskell 2010 btw

    • 1 month ago
      Anonymous

      I think they should strip the prelude and include way more packages in base.

  8. 1 month ago
    Anonymous

    He only spoke about Scheme, not Lisp.

    No, Scheme is not Lisp.

    • 1 month ago
      Anonymous

      Holy moron, Scheme is a Lisp-1

      • 1 month ago
        Anonymous

        The only Lisp is Common Lisp and everything else is Parenthesis Javascript.

        • 1 month ago
          Anonymous

          idiotic common lisp fanatic faakhead
          http://xahlee.info/comp/Common_Lisp_quotations.html

      • 1 month ago
        Anonymous

        Scheme is not Lisp. It's ALGOL with more parentheses.

  9. 1 month ago
    Anonymous

    Cuckmack waxing poetic about what could have happened if instead of quakec he used a tiny scheme implementation for scripting inspired me to embed scheme into my shitty 3d engine. Beats Lua which I am ashamed to have used in my script kiddy days.

    • 1 month ago
      Anonymous

      >Beats Lua
      That's very easy lol

      • 1 month ago
        Anonymous

        Yeah... But it was the most batteries included "scripting language to add to your C/C++ program" for so long. What else is there that's as easy to integrate? Squirrel?

        • 1 month ago
          Anonymous

          Probably Janet and Wren too, but these are really niche. Right now, my impression is that the best option is either a small Scheme, or Guile if you want your scripters to have lots of features.

      • 1 month ago
        Anonymous

        what's wrong with lua even?

  10. 1 month ago
    Anonymous

    Is there any relevant software made in haskell?

    • 1 month ago
      Anonymous

      Some banks use it I think.

    • 1 month ago
      Anonymous

      Of course: the Glasgow Haskell Compiler

    • 1 month ago
      Anonymous

      Cardano (cryptocurrency) is entirelly written is Haskell, so it can be formally verified more easily. Polkadot also uses the same Proof-of-Stake mechanism developed by Cardano. I don't know if it's a "decent project" by your definitions (since its crypto), but it is a HUGE one.

    • 1 month ago
      Anonymous

      Occasionally someone uses it to make some program that verifies other programs, but that's about it afaik. It's more for white papers than products. Every once in a while someone decides to run a website on Haskell but that's a tiny fraction of the web.

    • 1 month ago
      Anonymous

      A fair number of backends at the very leadt

    • 1 month ago
      Anonymous

      facebook runs on it

    • 1 month ago
      Anonymous

      pandoc

    • 1 month ago
      Anonymous

      Facebook uses it for bot/spam detection

  11. 1 month ago
    Anonymous

    He's right, there's very few interesting ideas in Lisp. Even "muh code is data" isn't that interesting unless you're coming straight out of 1970s PL design. All of the interesting ideas in PL design revolve around stricter static type systems that generate safer and faster code.

  12. 1 month ago
    Anonymous

    >rewriting the original wolfenstein in haskell
    why? it was fine as it was

    • 1 month ago
      Anonymous

      It's good to remake a real world project to learn a language instead of leetcode number 7612547.

      • 1 month ago
        Anonymous

        ok fair enough

  13. 1 month ago
    Anonymous
    • 1 month ago
      Anonymous

      Common Lisp?

      • 1 month ago
        Anonymous

        of course

    • 1 month ago
      Anonymous

      Every perceived criticism of haskell is an actual criticism of CL:
      >ecosystem fragmented to shit
      >terrible stdlib
      >no ecosystem
      >no usage in “real world”

      • 1 month ago
        Anonymous

        stdlib
        Not that anon, but this one goes far more for Haskell. CL standard library is pretty big but outdated, Haskell doesn't even have decent strings.
        You're right about the other ones, but stop being a partisan moron about languages.

        • 1 month ago
          Anonymous

          There are more considerations to a good stdlib than “decent strings”
          Even haskell’s default string type isn’t a deal-breaker depending on what you use the language for.

      • 1 month ago
        Anonymous

        >ecosystem
        CL has one of the best ecosystems of any language

        Emacs + Slime is easily the best editing experience of any language
        Exactly one de facto standard build system: asdf
        Exactly one de facto standard package manager: quicklisp
        Both are lispy and work great
        SBCL is the de facto standard FOSS implementation which produces native code, runs on all 3 major OS's, and has speeds anywhere between Java and C
        There are also tons of great libraries: awesome-cl.com
        You can even have static typing: https://coalton-lang.github.io
        Both IRC and the perpetual /lisp/ are highly active and welcoming to new lispers and veterans alike
        There are fantastic books to learn from: Practical Common Lisp, Land of Lisp, ANSI Common Lisp, etc.
        There is an actual standard which means CL code written 30 years ago still runs

        • 1 month ago
          Anonymous

          >CL has one of the best ecosystems of any language
          So it has a numerical processing library and bindings to opencl/cudal/etc.?

          • 1 month ago
            Anonymous

            >numerical processing and cuda
            yes
            read the link

            It's not as robust for that specific use case as say, Python, but no language is

          • 1 month ago
            Anonymous

            That's pretty cool, what link?

        • 1 month ago
          Anonymous

          quicklisp has no packages
          coalton is a meme

      • 1 month ago
        Anonymous

        Honestly given that Haskell was explicitly created to be a research language and gatekept for like a decade it's pretty impressive how much it's used. I saw a job posting for it today.

      • 1 month ago
        Anonymous

        >ecosystem fragmented to shit
        This is a massive problem for Scheme, but not Common Lisp. In fact, the real "killer app" that CL has over Scheme is that there is an actual unified standard that people can refer to, and this one standard, while messy in retrospective, provides plenty of useful features.

        Those insisting for a new CL standard at this point in time are misguided: it would only fragment the language further for no gain.

      • 1 month ago
        Anonymous

        Has nobody ever written big libraries that work perfectly well with one another for Haskell? Like Boost for C++

  14. 1 month ago
    Anonymous

    I can't be bothered to watch that video, so I'm just gonna assume your summary is correct. If so, that's a low IQ take. You may get the benefits of Haskell if you rewrite an existing project in Haskell but you won't get the benefits of Lisp if you rewrite it in Lisp. The dynamism that allows for rapid prototyping and the painless growth an evolution of a project doesn't come into play when you already know what the final product is gonna look like in pretty much every aspect. Ironically, having all of the basic parameters fixed is also what makes static typing tolerable.

    • 1 month ago
      Anonymous

      The summary is a little off but Carmack has actually used Racket at Facebook/Oculus, but the zoomies couldn't handle the parentheses so he had to switch.

      • 1 month ago
        Anonymous

        >zoomies couldn't handle the parentheses
        many such cases lmao

  15. 1 month ago
    Anonymous

    >lisp is overrated but scheme is kinda cool
    Scheme is a lisp you apes

    • 1 month ago
      Anonymous

      If you think the two statements contradict each other because scheme is a lisp, your IQ is about 90.

      • 1 month ago
        Anonymous

        I don't care about the statements, Scheme is still a Lisp.

        Scheme is not Lisp. It's ALGOL with more parentheses.

        >pic related
        I know there's some ALGOL in there but that doesn't make it ALGOL when majority of it is lisp.

        • 1 month ago
          Anonymous

          >I don't care about the statements, Scheme is still a Lisp.
          Who said it wasn't?

          • 1 month ago
            Anonymous

            OP and the ALGOL dude ITT

          • 1 month ago
            Anonymous

            >OP
            No, he didn't. It's really freaky just how much literal, clinical 80 IQ genetic trash is flooding this place... Quote the part of OP's post where he said Scheme is not a lisp.

          • 1 month ago
            Anonymous

            >calls others sub 80 IQ when he has no reading comprehension
            Kek

          • 1 month ago
            Anonymous

            >I hate Black folk but Morgan Freeman is kinda cool
            >"umm yikes chuddy achshually Morgan Freeman IS a Black person..."
            You're moronic.

          • 1 month ago
            Anonymous

            Notice how you couldn't quote any part of OP's post that says Scheme isn't a lisp? You are currently shaking with rage as you realize you can't do it in your next post, either. lol

            Aight guys you got me, I'm moronic.

          • 1 month ago
            Anonymous

            It's ok, anon. At least you didn't double down. I'm so used to morons doubling down and loop infinitely like bots that your admission immediately redeems you in my eyes. You're an ok moron.

          • 1 month ago
            Anonymous

            I reread the OP after your last post and realized I got it wrong, I know exactly what you're talking about and I rather admit I'm wrong than shit up a thread just because. We have enough double downers on this board as is.

          • 1 month ago
            Anonymous

            Notice how you couldn't quote any part of OP's post that says Scheme isn't a lisp? You are currently shaking with rage as you realize you can't do it in your next post, either. lol

        • 1 month ago
          Anonymous

          >I know there's some ALGOL in there but that doesn't make it ALGOL when majority of it is lisp.
          Scheme is Lisp plus the good parts of ALGOL and minus the good parts of Lisp.

          • 1 month ago
            Anonymous

            >minus the good parts of Lisp.
            That's harsh... it still has a usable metaprograming facility.

  16. 1 month ago
    Anonymous

    >rewrites an already existing project
    >the design and the implementation already out, he's only translating from language a to b
    >tells lisps are overrated
    Well of course he wouldnt get it. Lisps have the best flow of all languages, the process of programming is entirely fluid and seamless. You're operating on an environment and incrimentally add things there, then you declare the structure of the program and bam, you're done. This is uselss for an already defined and implemented project.
    Everyone else has to deal with tooling bs except java gays, but java gays use java which's overcomplicated, not simple like lisps. And javascript to which many compare the lisp family cant even compare thanks to its shitty tooling, shitty frameworks introducing its own moronic sub-languages instead of an API and the worst platform on the earth, the web browser.

    • 1 month ago
      Anonymous

      >Well of course he wouldnt get it. Lisps have the best flow of all languages, the process of programming is entirely fluid and seamless. You're operating on an environment and incrimentally add things there, then you declare the structure of the program and bam, you're done. This is uselss for an already defined and implemented project.
      Bingo. I beat it to it, though

      I can't be bothered to watch that video, so I'm just gonna assume your summary is correct. If so, that's a low IQ take. You may get the benefits of Haskell if you rewrite an existing project in Haskell but you won't get the benefits of Lisp if you rewrite it in Lisp. The dynamism that allows for rapid prototyping and the painless growth an evolution of a project doesn't come into play when you already know what the final product is gonna look like in pretty much every aspect. Ironically, having all of the basic parameters fixed is also what makes static typing tolerable.

  17. 1 month ago
    Anonymous

    All these people who want "formally verifiable programs" should just write formal proofs in Isabelle and make it generate Haskell.

  18. 1 month ago
    Anonymous

    And, 11 years later, is he using it for his AGI at Keen?

Your email address will not be published. Required fields are marked *