Jane Street is hosting a tech talk at Princeton! Food and beverages will be served.
When: Tuesday, November 12, at 5:00 PM
Where: Computer Science Building’s Tea Room.
Topic:
*Why Functional Programming Doesn’t Matter*
– or –
Why purity and laziness matter less than you think, and types matter more
Much has been said in recent years about the advantages of functional programming, including languages like Scheme, Erlang, Clojure, Haskell, Scala, F# and OCaml.
One common view among backers of functional programming, perhaps best summarized by John Hughes’s paper “Why Functional Programming Matters”, is that what makes functional languages so effective is a trio of features: higher order functions, laziness and purity.
This talk will present an alternate view, based on our experiences at Jane Street using OCaml to build production software over the past decade.
We don’t disagree with Hughes’ view that statically typed functional languages are unusually effective tools. But we believe that Hughes’ paper gets the order wrong. In particular, we’ll argue that an expressive static type system, which Hughes doesn’t mention, should be near the top of the list, and purity, which many think of as the defining aspect of functional programming, is near the bottom.
———
About Jane Street:
Jane Street is a quantitative proprietary trading firm with over 340 employees in offices in New York, Hong Kong, and London. Trading is an intensely technological business, so writing good software is a critical part of Jane Street’s operation. We are one of the world’s biggest industrial users of functional programming, and we use it in every area of the firm: trading, research, risk management, system administration, accounting, and beyond. We bring a deep understanding of markets, a scientific approach, and innovative technology to bear on the problem of trading on the world’s highly competitive financial markets. The office atmosphere is informal and intellectual. We focus on education, and you learn about software and trading via in-house classes, guest lectures, and on the job.