Discover your dream Career
For Recruiters

Bloomberg engineer: "I feel more productive in OCaml" than Haskell

While C++ is the standard for low-level programming languages, there are more specialist niche ones with devout fans. Two of these are Haskell, well liked at Standard Chartered, and OCaml, a favorite of Jane Street. 

But if you're looking for an alternative to C++, which is right for you? Dmitrii Kovanikov, a former Standard Chartered quant and current senior engineer at Bloomberg, spent most of his career in Haskell, but after switching to OCaml with Bloomberg he released a blog which had some interesting observations.

Haskell has "more features than probably any other programming language", but Kovanikov highlights that this can sometime be a problem. When working on a collaborative project, or picking something up from another developer, the "ugly side" can be unmanageable.

In OCaml, on the other hand, he says "the worst thing previous developers could do to it is have poor variable names, minimal documentation, and 200+ LOC functions." By not having to worry about all these potential complications, Kovanikov says, "I feel more productive in OCaml."

Click here to sign up to our technology newsletter 🔧

This extends to the ecosystems and plugins each language has. Kovanikov says the VSCode plugin, for example, "works out-of-the-box. I never had any issues with it." Haskell's ecosystem meanwhile is like "an emotional rollercoaster" with tons of good features, but a lot of errors and/or extra work to do to implement them.

OCaml's simplicity helps when working with the compiler. He says in Haskell, "compiler messages tend to be verbose with lots of contextual, often redundant, and distracting information." OCaml's messages meanwhile are "succinct" but they can sometimes be too succinct.

There are some areas, however, where Haskell shines. For one, Kovanikov says, "Haskell probably has the most elegant syntax across all languages I've seen," and expressing ideas in it can provide "utter joy." He also compliments the extensive documentation for Haskell's standard library, which can be especially important for beginners in the language.

 Have a confidential story, tip, or comment you’d like to share? Contact: +44 7537 182250 (SMS, Whatsapp or voicemail). Telegram: @SarahButcher. Click here to fill in our anonymous form, or email editortips@efinancialcareers.com. Signal also available.

Bear with us if you leave a comment at the bottom of this article: all our comments are moderated by human beings. Sometimes these humans might be asleep, or away from their desks, so it may take a while for your comment to appear. Eventually it will – unless it’s offensive or libelous (in which case it won’t.).

author-card-avatar
AUTHORAlex McMurray Reporter
  • GA
    GA
    30 January 2024

    Haskell has dethroned C++ as my favourite programming language as soon as I started learning it. I'm not half as proficient as in C++ (which is so huge and full of pitfalls that even the committee members admit they do not know it completely) but its purely functional approach, the terseness of the syntax, the strong type system, all contribute to a level of abstraction and elegance which I sorely miss in my day-to-day work in C++ and mostly Python.


    Unfortunately both Haskell and OCaml are quite niche not only in the financial industry, but in any industry.

Sign up to Morning Coffee!

Coffee mug

The essential daily roundup of news and analysis read by everyone from senior bankers and traders to new recruits.

Boost your career

Find thousands of job opportunities by signing up to eFinancialCareers today.
Recommended Articles
Recommended Jobs

Sign up to Morning Coffee!

Coffee mug

The essential daily roundup of news and analysis read by everyone from senior bankers and traders to new recruits.