Explore the principles and practice of Denotational Design in functional programming through this comprehensive YOW! 2015 conference talk by Conal Elliott. Delve into a methodology for designing high-level libraries that focuses on creating precise, algebraic-like specifications using mathematical models. Learn how to define operations based on meanings rather than representations, and understand the benefits of this approach in capturing a library's intent without operational details. Discover real-world applications of Denotational Design, including Functional Reactive Programming (FRP) and the Pan system for image manipulation. Gain insights into using Haskell's purity and type classes to guide the design process, and understand how these techniques can be applied to other functional languages. Follow along as Elliott demonstrates examples, discusses the state of the art in software design, and explores the importance of clear, unambiguous specifications in library development.