5 ms·
Somewhat tangential, but the only software I know of that's written in Haskell is ImplicitCAD https://implicitcad.org/ https://implicitcad.org/
by RobotToaster 2y ago
Somewhat tangential, but the only software I know of that's written in Haskell is ImplicitCAD https://implicitcad.org/ https://implicitcad.org/
- weikju 2y agoShellcheck is another useful one (linter for shell scripts) https://www.shellcheck.net/ https://www.shellcheck.net/
- tmountain 2y agoHaskell is an amazing type checker that’s occasionally used for writing software. ;-)
- thesz 2y agoThis thing is awesome! I tried it on couple of one liners and it found a couple of potential problematic points, one for each one liner.
- Vosporos 2y agoShellCheck is an essential part of my projects' CI, couldn't do without it!
- MaxRegret 2y agoDon't forget Pandoc!
- f1shy 2y agoI had no idea it was Haskell. So much for what I heard “no practical use”. Pandoc seems like very real life practical Application for me.
- sudahtigabulan 2y agoAnd Pandoc's author is not even a software professional. He's a philosophy professor. :^)
- tombert 2y agoI've said for awhile that Pandoc is one of the very few Haskell programs that isn't exclusively used by Haskell programmers. There are plenty of interesting Haskell programs (e.g. Xmonad, Darcs), but a lot of people explicitly use them because they're Haskell. Pandoc, on the other hand, is useful to pretty much anyone who has ever needed to convert documents. It's one of the first things I install on most computers.
- AlgebraFox 2y agohttps://simplex.chat/ https://simplex.chat/ Private messenger for desktop and mobile platforms. It's mostly written in Haskell except for UI.
- exe34 2y agoHaving a quick look through their repos, it looks like they don't use Haskell for the mobile platforms? > cpp-for-mobile > Template for cross-platform mobile app with native UIs and C++ core
- AlgebraFox 2y agohttps://github.com/simplex-chat/simplex-chat/blob/stable/flake.nix https://github.com/simplex-chat/simplex-chat/blob/stable/fla... Their flake.nix indicates they use Haskell to generate cross compiled shared library for Android, iOS, Mac, Linux and Windows. I am not expert in Nix but at high level I can see they are indeed using Haskell.
- exe34 2y agoah that makes sense thanks!
- internet_points 2y agoAlso the server backend for the Wire messenger https://github.com/wireapp/wire-server https://github.com/wireapp/wire-server
- FabHK 2y agoPity that Wire never took off. It combined all the advantages of messaging apps for a while (available on many platforms, e2ee, etc.). Goes to show that success is not determined by technology.
- ryandv 2y agoThe aura package manager for AUR, as well as the xmonad tiling WM.
- yehoshuapw 2y agohttps://hledger.org/ https://hledger.org/ hledger - a plain text accounting tool
- colordrops 2y agoXmonad, though most people have moved on to other window managers at this point.
- mbwgh 2y agoNot me, because I hate change!
- ulrikrasmussen 2y agoI still use it, it's the main reason I don't want to switch to Wayland. Everything looks and feels like it did 15 years ago, it's great!
- internet_points 2y agohttps://github.com/waymonad/waymonad https://github.com/waymonad/waymonad (no idea if it's usable)
- cap11235 2y agoThere are stronger reasons to avoid wayland. It's a protocol that manages to have all implementations slightly different, and creating an EGL context per the glxgears results in a hard crash, both with AMD and NVIDIA cards. I assume I messed up the EGL context, but why does my entire desktop need to crash? Xkill is a much better UX, and that's kinda sad. An Xorg app failing dramatically doesn't murder my desktop session
- ulrikrasmussen 2y agoAs a user I also just don't care because X11 satisfies all my needs, and I have never really understood why we needed to change the stack.
- bekantan 2y agoStill on XMonad, what are some good alternatives?
- 2y ago
- TypingOutBugs 2y agoI worked on Cardano which is probably one of the larger Haskell projects (and Agda, which lets you write proofs and compile into Haskell!)
- henrebotha 2y agoMan I really want to learn a good code-driven CAD app sometime. Last time I tried to look at ImplicitCAD the website was down so I just gave up lol CADQuery/build123d is the other big one I'm interested in.
- simonmic 2y agoThat got fixed the other day. https://implicitcad.org https://implicitcad.org
- cropcirclbureau 2y agoPostgREST and Hasura (before rewrite) are written in Haskell.
- hiAndrewQuinn 2y agoEveryone else is responding with FOSS, so I'll respond with some companies: Co-Star, the astrology SaaS, is apparently written with a Haskell backend. I'd love to have seen the casting call for that. I believe the Mercury bank also runs most of their backend stuff on Haskell. Functional languages in general are surprisingly common among financial investment firms. Some of Target's stuff is written in Haskell. I think there was at least one big Facebook project that was written in Haskell, but they may have moved away from it by now. Awake Security does some Haskell stuff. One thing which might be surprising is Haskell is apparently quite strong for general backend web dev.
- internet_points 2y agoI maintain Haskell code for five different customers, some large projects, some smaller, projects of varying ages up to over a decade. All the projects do "server backend" stuff, some web frontend too. I love how secure I feel making changes to things I haven't touched in a while.
- _jackdk_ 2y ago> Haskell is apparently quite strong for general backend web dev Yep. Mostly because of the https://www.servant.dev/ https://www.servant.dev/ framework (but see also IHP, Yesod, and other frameworks). Servant lets you declare your HTTP API at the type level, and then it will infer the correct types for your endpoint handlers. You can also extract OpenAPI specs from it, generate clients for Haskell or other languages, etc. My current employer, Bellroy, uses Haskell for pretty much all new code and Servant for all new HTTP APIs. https://exploring-better-ways.bellroy.com/our-technology-stack-and-how-we-got-here.html https://exploring-better-ways.bellroy.com/our-technology-sta... is an older post discussing the shift to Haskell. We've found Haskell code to be much more compact than the equivalent Ruby, and significantly more robust.
- hiAndrewQuinn 2y agoGoing from Ruby to Haskell is, itself, quite a good signal of quality for me. Start strong and end stronger. Sounds like you've got a good thing going!
- epolanski 2y agoI like Haskell, but I think it suffers from the same issues preventing most lisps to gain any traction: every codebase is different and reinvents its own DSL or uses different extensions. Lispers hailing macros and metaprogramming cannot understand that power is also the very thing that makes jumping from project to project difficult, I have no intention of relearning your cleverly designed DSL or new extensions. There's a reason why Java or PHP have plenty of widely used killer software, while monocle-wielding lispers and haskellers have very little to show after many decades. It's not FP being the issue, it's just that their power attracts crowds interested in code more than the features/business/product. I don't blame them, I love Haskell and Racket but I think very few teams can scale and make the compromise worth it.
- kreetx 2y agoThe upside for haskell is that whenever you come to some new code, or return to your own old DSL-y code, the types are there as spikes in a cliff to help you move onward. With, e.g elisp, I always get a mild headache when I need to add some new feature to a codebase I myself wrote.
- colordrops 2y agoPerl was like this, though it did have wide adoption at one point. But people got sick of having 20 ways to do the same thing so Python was born. Is there an equivalent in the FP world?
- internet_points 2y agohttps://tidalcycles.org/ https://tidalcycles.org/ – think ImplicitCAD but for live music performances? also http://detexify.kirelabs.org/classify.html http://detexify.kirelabs.org/classify.html was surprisingly useful in university
- endgame 2y agoThe other ones most people point to are https://pandoc.org https://pandoc.org and https://shellcheck.net https://shellcheck.net
- Locutus_ 2y agoI've used Haskell several times for implementing isolated 'maths business logic units in commercial backend applications. In one such system I built had the main (REST API exposing) backend implemented in Kotlin with a separate application in Haskell doing a complex set of maths driven business rules against GIS data to calculate area specific prices. The amount of IO on the Haskell side was fairly minimum and abstracted away quite nicely. Haskell allowed expressing all complexity in a way that was easy to audit and translate from business/data analyst requirements. Would do again :-) But only with the correct amount isolation so you can lean into Haskell's strong sides.
- IshKebab 2y agoI think Pandoc too, but yeah it's a fairly accurate meme that Haskell isn't really used to make anything except Haskell compilers and tutorials. Last time I checked there was actually an exhaustive list of software written in Haskell somewhere, which they meant as a "look how successful it is - all these projects!" but is really "it's so unsuccessful we can actually write down every project using it".
- simonmic 2y agoHere you go :) https://joyful.com/Haskell#What+Haskell+apps+are+out+there+%3F https://joyful.com/Haskell#What+Haskell+apps+are+out+there+%...
- IshKebab 2y agoOh yeah I was thinking of this list: https://wiki.haskell.org/Haskell_in_industry https://wiki.haskell.org/Haskell_in_industry Imagine a "Go in industry" page. Even a "Rust in industry" would be laughable at this point. Ok I'm maybe being a little unfair, but you get the point.
- simonmic 2y agoThat wiki page is very old. But yes, some such list is still needed for now, because people keep wondering about it.
- cryptonector 2y agoYou're missing out if you don't know about PostgREST.