How to replace configs with code, and why you might not want to
Presented by: Dominick LoBraico
Complicated systems require expressive configuration languages. But language design is hard: It’s no surprise that many applications have either limited configurability or an unwieldy configuration format with complex semantics. One solution to this problem is to write your configs in an existing language and treat them more like code. This pattern allows you to use the same familiar workflows and tools to configure applications that you use when developing them.
At Jane Street, we developed ocaml-plugin, a library for embedding OCaml within an application, to leverage this approach and have made use of it in a variety of systems. But, giving config-writers the full flexibility of a Turing-complete language introduces its own problems. In this talk, we’ll discuss the merits of writing configs in code and cover some of the different approaches we’ve taken to harness this power.
Wednesday, May 17th
Snacks will be served.