Live data from Hacker News

The Haskell Elephant in the Room

stephendiehl.com

281–290 of 341 posts

Re: The Haskell Elephant in the Room

#281
post #246

Cryptocurrency enables people to make anonymous monetary transactions. Also, so does cash. Drug dealers and criminals still very much prefer cash. Is it wrong to work with certain traditional finance companies because of their association with cash? Should we be worried about users associating your favorite language with the seedy world of cash transactions which subvert the traditional role and spying capacity of la…

> Is it wrong to work with certain traditional finance companies because of their association with cash?

On the contrary, drug dealers and criminals stay away from traditional banks precisely because of this. Are you asking is it wrong to work in the foreign banknote management business, or the Western Union style irreversible wire transfer business, or the gift card trading business, or a business that wants to pay you cash in hand? I would say yes. At some point the criminal uses of a given tool are so overwhelmingly more popular than legitimate uses that the tool itself becomes tarred with criminality.

Re: The Haskell Elephant in the Room

#282

Earlier quoted context omitted.

There’s a deep connection between Types and Logical Proofs (Curry Howard Correspondence). Haskell has a rich type system that allows you to “prove” (i.e. typecheck) many properties of your program. This is valuable when getting right the first time is important such as smart contracts. I put prove in quotations because all type systems of Turing complete languages are unsound, but this doesn’t matter too much in prac…

That's not true... all turing complete type systems are unsound (where the type metalanguage itself is a turing complete language), but you can have a sound type system of a turing complete language, and in fact haskel itself has such a type system.

[deleted]

Re: The Haskell Elephant in the Room

#283

Earlier quoted context omitted.

There’s a deep connection between Types and Logical Proofs (Curry Howard Correspondence). Haskell has a rich type system that allows you to “prove” (i.e. typecheck) many properties of your program. This is valuable when getting right the first time is important such as smart contracts. I put prove in quotations because all type systems of Turing complete languages are unsound, but this doesn’t matter too much in prac…

That's not true... all turing complete type systems are unsound (where the type metalanguage itself is a turing complete language), but you can have a sound type system of a turing complete language, and in fact haskel itself has such a type system.

All types in Turing complete languages are inhabited by non terminating terms (looping forever, throwing exceptions), which means all propositions are provable.

For instance in Typescript,

  const absurd = (): A => absurd()

  const unimplemented = (): A => { throw new Error(“Unimplemented”) }

  const uninhabited: string & number = absurd()

Intuitively you can think of it like, “Yeah sure, I can build you a term of any possible type, as soon as I get back to you.”, but then the function just ghosts you by looping forever. But it hasn’t lied. However, so long as you’re aware of these gotcha’s they don’t come up much in practice which is why viewing types as proofs is still useful. Just don’t stake your career on one.

Re: The Haskell Elephant in the Room

#284

Earlier quoted context omitted.

Which can be restated as "Economic theories, on average, have little predictive power." I'm glad I took econ classes, but it is not a very practical discipline. And, yes, I think it's a stretch to call it a science when you can't do meaningful experiments. I object to calling geology a science for the same reason.

I would probably agree, but saying something is difficult to test is not the same as saying that many theories don't seem to be true in practice.

Valid point.

Re: The Haskell Elephant in the Room

#285

Earlier quoted context omitted.

> Cryptocurrencies and blockchains still don't seem to solve a real problem. Have you ever wanted to send money to someone who wasn't in the same location as you? Alternatively, have you ever wanted to send a large amount of money without dealing with a large volume of cash, gold, or some other physical store of value (making the down payment on a house or car for instance)? Blockchains make it possible for you to do…

I'll believe this when somebody buys a house with Bitcoin.

> I'll believe this when somebody buys a house with Bitcoin.

https://www.cnbc.com/2017/10/16/bitcoin-is-finally-buying-in...

"Our buyer has evolved, they've moved from mom and pops to young people who want to pay with various forms of payment," said Ben Shaoul, president of Magnum Real Estate Group. "Cryptocurrency is something that has been asked of us — 'Can you take cryptocurrency? Can we pay that way?' — and of course when somebody wants to pay you with a different form of payment, you're going to try to work with them and give them what they want, especially in a very busy real estate market."

Re: The Haskell Elephant in the Room

#286

Earlier quoted context omitted.

My rough understanding is that the focus is not on who is using the language, but rather who is funding the language, which of course is a huge distinction.

But banks (particularly Standard Chartered as an example) seem to have also funded a lot of the really early work on Haskell if I'm not mistaken. At least indirectly by hiring people who also work on the core tooling/libraries/etc. Haskell, and functional programming in general has a history of being used and developed heavily in the fintech industry (see Jane Street for OCaml as another example). It's no surprise th…

> really early work on Haskell

Only if you are very young.

Re: The Haskell Elephant in the Room

#287
post #246

Cryptocurrency enables people to make anonymous monetary transactions. Also, so does cash. Drug dealers and criminals still very much prefer cash. Is it wrong to work with certain traditional finance companies because of their association with cash? Should we be worried about users associating your favorite language with the seedy world of cash transactions which subvert the traditional role and spying capacity of la…

It's worth noting that the author's company is in the private blockchain field, complete with a smart contract language under their belt, in Haskell. Indeed, it's not the first time that a private blockchain partisan has attempted to tar all of "public" blockchain/crypto as a lawless amoral cesspool. R3 made similar claims in years past. In truth, there's been equal or more FUD thrown at private by public zealots too…

What private block chain?

Looks like a database backed web app for connecting financial data feeds.

https://www.adjoint.io/connect/

Re: The Haskell Elephant in the Room

#288
post #285

Earlier quoted context omitted.

I'll believe this when somebody buys a house with Bitcoin.

> I'll believe this when somebody buys a house with Bitcoin. https://www.cnbc.com/2017/10/16/bitcoin-is-finally-buying-in... "Our buyer has evolved, they've moved from mom and pops to young people who want to pay with various forms of payment," said Ben Shaoul, president of Magnum Real Estate Group. "Cryptocurrency is something that has been asked of us — 'Can you take cryptocurrency? Can we pay that way?' — and of c…

Spoiler alert: no one bought a house with Bitcoin. A real estate agent advertised a willingness to buy Bitcoin from his customer to facilitate a transaction.

Re: The Haskell Elephant in the Room

#289

Earlier quoted context omitted.

But banks (particularly Standard Chartered as an example) seem to have also funded a lot of the really early work on Haskell if I'm not mistaken. At least indirectly by hiring people who also work on the core tooling/libraries/etc. Haskell, and functional programming in general has a history of being used and developed heavily in the fintech industry (see Jane Street for OCaml as another example). It's no surprise th…

> really early work on Haskell Only if you are very young.

yes, good point, it's been around since the 90s when all of the work done on it was funded by purely academic institutions. I'm 29 years old, and I started using Haskell in about 2009, and I think that's around the time when it started picking up a larger userbase too.

Re: The Haskell Elephant in the Room

#290
post #281
post #246

Cryptocurrency enables people to make anonymous monetary transactions. Also, so does cash. Drug dealers and criminals still very much prefer cash. Is it wrong to work with certain traditional finance companies because of their association with cash? Should we be worried about users associating your favorite language with the seedy world of cash transactions which subvert the traditional role and spying capacity of la…

> Is it wrong to work with certain traditional finance companies because of their association with cash? On the contrary, drug dealers and criminals stay away from traditional banks precisely because of this. Are you asking is it wrong to work in the foreign banknote management business, or the Western Union style irreversible wire transfer business, or the gift card trading business, or a business that wants to pay…

www.marketwatch.com/story/netflix-documentary-re-examines-hsbcs-881-million-money-laundering-scandal-2018-02-21
Post reply on HN