| > "simplest way to do BasicAuth" The simplest way to do BasicAuth in Haskell isn't Servant. I feel like you're intentionally misinterpreting what I'm saying. As for resources, here's a great intro to type-level Haskell: http://www.parsonsmatt.org/2017/04/26/basic_type_level_progr... > For some reason, functions that operate on types are called type families. That's the kind of thing you need to know. I doubt the average JS user knows how V8 optimizes execution of code, or whatever. That's what your insistent complaints about type theory amounts to: none of the articles I'm linking to mention inference rules or type judgments or what-have-you. That's what all the research papers about Haskell are for, which you do not need to read to use this language. Even advanced Haskellers don't do type theory (category theory, maybe, not type theory). Only a couple of people working on the compiler do. More DataKinds: https://stackoverflow.com/questions/20558648/what-is-the-dat... http://ponies.io/posts/2014-07-30-typelits.html https://www.schoolofhaskell.com/user/k_bx/playing-with-datak... |
True, I re-read what you wrote, and argh. I need to learn to read.
> As for resources, here's a great intro to type-level Haskell: > That's the kind of thing you need to know.
So, we're basically returning to the root of my complaints
> I doubt the average JS user knows how V8 optimizes execution of code
Wait. Are you telling me now is that writing a BasicAuth implementation in a "simple library that doesn't require you to have a PhD in type theory" is on the same level of complexity as knowing the inner workings of an advanced Javascript VM?
> That's what your insistent complaints about type theory amounts to: none of the articles I'm linking to mention inference rules or type judgments or what-have-you.
No, they don't.
I'm looking at Servant and its examples. In order to write an extremely simple and basic piece of code, I, as a programmer:
- have to pull in no less than 10 language extensions
- five of those extensions are just workarounds some obscure Haskell rules (?)
- in order to understand just the basics of what's going on in there I need to know why when and where these extensions are used, how they work etc.
What happens the moment I step outside the bare necessities of the extremely simple BasicAuth implementation, for instance?
> More DataKinds:
This exactly what I wrote: as soon as you step outside into a real world of Haskell, oh "here's a list of increasingly obscure things you need to know. Maybe two people on StackOverflow know about them. For the rest, please proceed to your nearest university to obtain a PhD or two".