HackerTrans
TopNewTrendsCommentsPastAskShowJobs

jose_zap

no profile record

Submissions

Using Haskell in Production

agentultra.com
22 points·by jose_zap·10 เดือนที่ผ่านมา·0 comments

comments

jose_zap
·2 เดือนที่ผ่านมา·discuss
> the tooling is decades behind, say, Rust or Go

That's definitely not true, even if that was true maybe 6 years ago. As someone who's uses Haskell daily and also many other languages, I can see Haskell's tooling as more advanced than many others.
jose_zap
·3 เดือนที่ผ่านมา·discuss
We have been using statecharts at our company for all business processes after I wrote an interpreter for them inside Postgres.

It has been a great experience so darn it makes processes very resilient against change and very easy to come back to after years.

The library is open source too:

https://github.com/kronor-io/statecharts
jose_zap
·4 เดือนที่ผ่านมา·discuss
No, it can be any pure function or IO. Both will get interrupted.
jose_zap
·11 เดือนที่ผ่านมา·discuss
Haskell would be one of them. It features transactional memory, which frees the programmer from having to think about explicitly locking.
jose_zap
·ปีที่แล้ว·discuss
That was definitely true many years ago. Nowadays Haskell has some really good tooling.

It has a feature-rich LSP, code formatter, package manager, dead-code checker, configurable linter, thread debugger, memory debugger, vulnerabilities checker, and much more.

That’s just what is provided by external tooling. Then, it also has everything the compiler has to offer, which is bit more than what most languages do. For example, you can now compile to JavaScript or WASM.
jose_zap
·ปีที่แล้ว·discuss
> Postgres offers strictly serializable isolation indeed, but IIUC it's basically a form of read locking so will tank performance.

It will not. We use it at work for all transactions and its is very performant.
jose_zap
·ปีที่แล้ว·discuss
Interestingly, the naive solution presented in this article is O(n) thanks to laziness.
jose_zap
·ปีที่แล้ว·discuss
That’s floating point, though. Not Double. Floating point has the same gotchas in all languages because it is a defined standard.
jose_zap
·ปีที่แล้ว·discuss
Haskell has & which goes the other way:

    users
      & map validate
      & catMaybes
      & mapM persist