9 comments

[ 2.8 ms ] story [ 30.1 ms ] thread
"Huh never heard of Bellroy... I wonder what they're using Haskell for..."

Turns out it's some kind of bags and accessories brand!

I bought a leather wallet from them in 2016 (the Hide & Seek) and it is still holding up well despite a few loose stitches. It’s much slimmer than my older wallet.
Very cool that the language allows specification of a type in this way.

I added a similar type — “non-empty-string” to a typechecker for PHP, and it’s been adopted widely in the PHP ecosystem. It turns out to be pretty handy, especially when there’s a full type system to support it.

> Very cool that the language allows specification of a type in this way.

Check out Idris 2. Dependent types can get very hairy to work with, but that language is an absolute playground for inductive type-level verification. And the standard library is like a nice Haskell standard library to me in a lot of ways, although the language itself is (unsurprisingly) not nearly as "production ready" as Haskell.

Empty strings are usually an artifact of lazy developers paying a minimal "empty" value for a type (just as 0 for numbers).

A type like NonEmptyString is a weak defense against that, as a lazy dev can just pass a single space character or something similar.