Skip to content
0:00 / 0:00

#ocaml#effectsystem#algebraiceffects

Effective Programming: Adding an Effect System to OCaml

Jane Street

102K subscribers • 18 videos on Hallway

YouTube
  • Recommended by 3 people: 1 on Lobsters and 2 in engineering communities.

Advanced. Deep dive for people who know the field.

15K views8 years ago3 recommendations

Programming languagesSystems programmingLanguage design and type systemsConcurrency and parallelism

An explanation of the ongoing work to add an algebraic effect system to OCaml for tracking side-effects and concurrency.

Type systems designed to track the side-effects of expressions have been around for many years but they have yet to breakthrough into more mainstream programming languages. This talk focuses on on-going work to add an effect system to OCaml. This effect system is primarily motivated by the desire to keep track of algebraic effects in the OCaml type system. Algebraic effects are an exciting new programming construct for implementing control effects such as concurrency, co-routines and generators. Through the Multicore OCaml project, support for algebraic effects is likely to be included in OCaml in the near future. However, the effect system also allows for tracking side-effects more generally. It distinguishes impure functions, which perform side-effects, from pure functions, which do not. It also includes a tracked form of exception to support safe and efficient error handling. This talk gives an overview of the effect system and demonstrates a prototype implementation on some practical examples.

Why it's here

3 people recommend this

brendanon Lobsters • Recommends

Effective Programming: Adding an Effect System to OCaml

u/bjzabain r/ProgrammingLanguages • Recommends

Effective Programming: Adding an Effect System to OCaml

u/agumonkeyin r/ocaml • Recommends

Effective Programming: Adding an Effect System to OCaml - Jane Street 2018