I describe my experience using algebraic data types in F# for modeling and communication of domain concepts between a development team, domain experts, and other stakeholders. This experience was very successful, and I describe the reasons why F# is well suited for this.