FP Complete

QuickCheck, Hedgehog, Validity

I have been working on property testing for years now. My current conclusion is that property testing still has so much uncovered potential that with just some more effort, it can become an even greater tool for software development than it already is today. The concept is relatively young and the design space relatively unexplored. […]

Blockchain Programming Applications Beyond Cryptocurrency

Originally devised to serve as the nerve-center of bitcoin, blockchain programming has come a long way. The brainchild of Satoshi Nakamoto (the pseudonym used for the person or people who developed bitcoin), the technology has today expanded into something bigger, accomplished enough to be put to use in a gamut of potential applications. But before […]

Randomization Testing for an SQL Translator

Not all SQLs are created equal. I’ll say even more, none of the SQL dialects are even close to being equal. In particular, when talking about Microsoft SQL Server and PostgreSQL, their syntax might look similar. However, in their semantics, they are mountains apart. Today I will describe How we implemented an automatic translator from […]

WebAssembly in Rust: A Primer

We are excited that we have been able to keep up with the pace of our monthly webinar series. More importantly, we have been able to offer a variety of topics and this month’s webinar certainly illustrates our commitment to webinar diversity.  We are pleased that Aniket Deshpande (Software and DevOps Engineer at FP Complete) was able to discuss […]

Defining exceptions in Haskell

Let’s talk about exceptions. Programs do a thing successfully all the time, except sometimes when things didn’t work out. So we have “exceptions”, which, like anything fun in programming languages, was invented in Lisp in the 60’s . They’re not perfect in Haskell. They’re not perfect in any language, really. We’re always making adjustments to […]

When Rust is safer than Haskell

We’re big fans of safety-focused languages at FP Complete. As our previous blog post comparing Rust and Haskell made clear, we think both of these are great languages. A recurring theme we have for both internal and client projects is: which language should we use? The general guidelines in that blog post apply: If there’s […]

Building Terminal User Interfaces in Haskell

Our webinars are continuing to be as popular as ever and Tom Sydney Kerckhove’s (Tech Lead at FP Complete) webinar on “Building Terminal User Interfaces with Haskell” was no exception. We had 426 people registered for the event which aired on Wednesday, November 28th at 10:00 am PST. If you tuned in live you would […]

Haskell and Rust

FP Complete is known for our best-in-class DevOps automation tooling in addition to Haskell. We use industry standards like Kubernetes and Docker. We’re always looking for new developments in software that help us empower our clients. Rust is an up-and-coming programming language whose history starts in 2010. Rust has much overlap in its strengths with […]

Is Rust functional?

In the past few months, and in particular in the past two weeks, I’ve gotten a number of people asking me the question: Is Rust a functional programming language? This makes sense: I’m a big advocate of functional programming, I work at a company with FP in its name, my primary programming language is Haskell, […]

Development Workflows in Haskell

Our monthly webinar series is really starting to take off and judging by the registration numbers we might be forced into allowing more than 500 people to register for our next webinar which could be about Rust – Don’t hold us to that 😉  For Roman’s, Development Workflows in Haskell, we had 434 registrants which […]