One of the nice features of IHP is that, thanks to Haskell’s strict type checking, it does not just eliminate bugs, it also speeds up development. E.g. if you want to change or build a new feature, you don’t need to write tests for it since the compiler basically does that for you. Since you don’t need to write tests, your work is perhaps half of what it would be normally – and neither do you have to know how to writ…
Show HN: IHP v1.0 – Batteries-included web framework built on Haskell and Nix
21–30 of 40 posts
Re: Show HN: IHP v1.0 – Batteries-included web framework built on Haskell and Nix
#22I've been meaning to pick up either Haskell or OCaml for my next language. On the OCaml side, I see Cornell's free CS 3110 textbook recommended around here. Is there something similar on the Haskell side?
Re: Show HN: IHP v1.0 – Batteries-included web framework built on Haskell and Nix
#23One of the nice features of IHP is that, thanks to Haskell’s strict type checking, it does not just eliminate bugs, it also speeds up development. E.g. if you want to change or build a new feature, you don’t need to write tests for it since the compiler basically does that for you. Since you don’t need to write tests, your work is perhaps half of what it would be normally – and neither do you have to know how to writ…
Don't need to write _type_ tests (like you would in a dynamic language). Having strong typing doesn't magically do formal validation on your logic. Leaning heavily on types is good practice, but that doesn't eliminate most of the high value tests you'd have to write.
Re: Show HN: IHP v1.0 – Batteries-included web framework built on Haskell and Nix
#24One of the nice features of IHP is that, thanks to Haskell’s strict type checking, it does not just eliminate bugs, it also speeds up development. E.g. if you want to change or build a new feature, you don’t need to write tests for it since the compiler basically does that for you. Since you don’t need to write tests, your work is perhaps half of what it would be normally – and neither do you have to know how to writ…
Don't need to write _type_ tests (like you would in a dynamic language). Having strong typing doesn't magically do formal validation on your logic. Leaning heavily on types is good practice, but that doesn't eliminate most of the high value tests you'd have to write.
There are plugins for Haskell and dependently typed languages that go much further in the ‘if it compiles, it is formally validated’, but that’s a lot more work; there is a trade-off for now or you will be stuck. Your ‘run of the mill’ tests also don’t formally validate your logic (not even close usually). Our types, even if static, are usually too loose and our type systems not powerful enough; writing tests helps to close the gap between practical and theoretical but a lot more can be done semi-automatically (and will be I hope).
Re: Show HN: IHP v1.0 – Batteries-included web framework built on Haskell and Nix
#25I've been meaning to pick up either Haskell or OCaml for my next language. On the OCaml side, I see Cornell's free CS 3110 textbook recommended around here. Is there something similar on the Haskell side?
Re: Show HN: IHP v1.0 – Batteries-included web framework built on Haskell and Nix
#26One of the nice features of IHP is that, thanks to Haskell’s strict type checking, it does not just eliminate bugs, it also speeds up development. E.g. if you want to change or build a new feature, you don’t need to write tests for it since the compiler basically does that for you. Since you don’t need to write tests, your work is perhaps half of what it would be normally – and neither do you have to know how to writ…
Not sure if you're being sarcastic, but Haskell developers should definitely write tests, and good ones know how to write good tests. The type system eliminates the need for some forms of testing, but not all.
Re: Show HN: IHP v1.0 – Batteries-included web framework built on Haskell and Nix
#27Earlier quoted context omitted.
Not sure if you're being sarcastic, but Haskell developers should definitely write tests, and good ones know how to write good tests. The type system eliminates the need for some forms of testing, but not all.
Thanks for the feedback. I am definitely a beginner in Haskell, which would explain why I came to this conclusion. Could you recommend some good sources on testing in Haskell?
John Hughes (not the filmmaker) gives a great talk about it: https://youtu.be/zi0rHwfiX1Q
Re: Show HN: IHP v1.0 – Batteries-included web framework built on Haskell and Nix
#28Earlier quoted context omitted.
Don't need to write _type_ tests (like you would in a dynamic language). Having strong typing doesn't magically do formal validation on your logic. Leaning heavily on types is good practice, but that doesn't eliminate most of the high value tests you'd have to write.
> Having strong typing doesn't magically do formal validation on your logic There are plugins for Haskell and dependently typed languages that go much further in the ‘if it compiles, it is formally validated’, but that’s a lot more work; there is a trade-off for now or you will be stuck. Your ‘run of the mill’ tests also don’t formally validate your logic (not even close usually). Our types, even if static, are usual…
Yes, Lean 4[1] is shaping up to be a Haskell-inspired dependently typed language with monadic IO etc. that can also prove theorems for you. Still a work in progress but looks very exciting.
Re: Show HN: IHP v1.0 – Batteries-included web framework built on Haskell and Nix
#29Earlier quoted context omitted.
> Having strong typing doesn't magically do formal validation on your logic There are plugins for Haskell and dependently typed languages that go much further in the ‘if it compiles, it is formally validated’, but that’s a lot more work; there is a trade-off for now or you will be stuck. Your ‘run of the mill’ tests also don’t formally validate your logic (not even close usually). Our types, even if static, are usual…
> There are plugins for Haskell and dependently typed languages that go much further in the ‘if it compiles, it is formally validated’ Yes, Lean 4[1] is shaping up to be a Haskell-inspired dependently typed language with monadic IO etc. that can also prove theorems for you. Still a work in progress but looks very exciting. [1] https://leanprover.github.io/lean4/doc/
- Idris (https://www.idris-lang.org/)
- Agda (https://wiki.portal.chalmers.se/agda/Main/HomePage)
I'm really excited by progress in this space! :)
Re: Show HN: IHP v1.0 – Batteries-included web framework built on Haskell and Nix
#30I've been meaning to pick up either Haskell or OCaml for my next language. On the OCaml side, I see Cornell's free CS 3110 textbook recommended around here. Is there something similar on the Haskell side?