Live data from Hacker News

Real World Ocaml announced

realworldocaml.org

51–58 of 58 posts

Re: Real World Ocaml announced

#51

Yaron Minsky is the technical director at Jane Street Capital, which is one of the most prestigious functional programming shops in the world. http://janestreet.com/technology/articles.php

A while ago I truly enjoyed his talk at CMU: https://ocaml.janestreet.com/?q=node/61 both as an introduction to high frequency trading, arbritage and stuff, and to FP in industry too.

EDIT: it was already posted below.

Re: Real World Ocaml announced

#52
post #7

Earlier quoted context omitted.

You might find this interesting: https://ocaml.janestreet.com/?q=node/61 TL;DR: Jane Street is a quantitative trading firm whose language of choice is OCaml and has several people programming in it full-time. Besides experiencing the commonly-cited advantages of FP (productivity, expressiveness, local reasoning), they also found it highly performant, useful for rapid prototyping and resilient to changing requirements…

By "several people programming in it full-time" you mean "everyone who writes code in the company (IT, developers, researchers and traders) writes code in OCaml" right?. Yaron has said (perhaps in that video, perhaps somewhere else) that the founding partners (who were voice traders, not programmers) learned OCaml as their second programming language, after VBA. The language pervades the company.

That's right. All I know is what I saw in that video, though, so you probably know more about this than I do.

Re: Real World Ocaml announced

#53

Earlier quoted context omitted.

I think this is going to turn out to be a killer feature of Ocaml once people get used to the fact that using 8 cores at once isn't that great of a goal when on-demand computing platforms let you scale much much larger. I think this point isn't made often enough. There certainly are times when scaling within a single machine is useful but, as is more often the case, if you have to scale beyond a single physical insta…

Certainly, but there are circumstances - say high-performance math & data heavy stuff - that benefits greatly from a shared memory implementation. And the ease of use of multi-process architectures needs to be improved as well.

Note that OCaml is just fine for heavy math and data stuff: the garbage collector has a global lock, but threads work just fine for CPU intensive activities. Just don't generate much garbage (which is important for any data-heavy processing), and all is good.

Re: Real World Ocaml announced

#54

As a primarily imperative programmer who is just becoming more familiar with Haskell, I'd love to see a compare/contrast between Haskell and Ocaml from someone with expertise in this area.

not mentioned by others is the real reason why Haskell is winning: concurrency & parallelism. The GHC compiler for Haskell has an incredible runtime with async IO by default, it is capable of running millions of threads, works on multi-core, and has a good STM implementation.

Re: Real World Ocaml announced

#55

As a primarily imperative programmer who is just becoming more familiar with Haskell, I'd love to see a compare/contrast between Haskell and Ocaml from someone with expertise in this area.

not mentioned by others is the real reason why Haskell is winning: concurrency & parallelism. The GHC compiler for Haskell has an incredible runtime with async IO by default, it is capable of running millions of threads, works on multi-core, and has a good STM implementation.

Is there something about Haskell-the-language that offers concurrency/parallelism benefits or is this primarily an advantage of GHC-the-implementation?

Re: Real World Ocaml announced

#56

As a primarily imperative programmer who is just becoming more familiar with Haskell, I'd love to see a compare/contrast between Haskell and Ocaml from someone with expertise in this area.

The biggest differences are that Haskell defaults to lazy evaluation and OCaml defaults to strict and that OCaml allows you to mix in imperative code without explicitly using constructs like monads.

I think modules vs. typeclasses are a bigger difference. The Haskell approach to IO isolation would be much more horrible without exploiting features peculiar to the typeclass system. The IO system in early versions of Haskell did not exploit these features, and it was a disaster (http://research.microsoft.com/en-us/um/people/simonpj/Papers...).

Re: Real World Ocaml announced

#58

Yaron Minsky is the technical director at Jane Street Capital, which is one of the most prestigious functional programming shops in the world. http://janestreet.com/technology/articles.php

I wonder how goes an interview at their company.

a few people have blogged about it, its supposedly one of the hardest software interviews in the world. one blogger said the final in-person interview prompt was to write a regular expression matcher on the whiteboard in ocaml in 45 minutes.
Post reply on HN