programming-talkscurated list on GitHubRecommends
Under “Scala”
Principles for Modular, Functional, Approachable Libraries 01:32:44 by **Erik Osheim** (2015)
5.9K subscribers • 13 videos on Hallway
Advanced. Deep dive for people who know the field.
7.5K views11 years ago2 recommendations
Software designProgramming languagesScalaFunctional programmingSoftware architecture
Erik Osheim discusses key principles and design goals for building modular, functional, and approachable libraries in Scala.
Scala stands for “scalable language” and was designed to be able to grow and evolve. One look at the Scala ecosystem shows that this goal has been successful — many people have been excited to make Scala their own, and to extend the state of the art in all directions, based on their needs, principles, and whimsy. This Cambrian explosion of expressiveness has brought with it a wide variety of idioms, conventions, strategies, preferences, and designs. Some of these are purely stylistic, others are critically-important, and it is not always clear which are which. Given this massive possibility space, what is a library author to do? Starting with a few key principles and design goals, this talk takes a holistic look at designing useful, efficient, and reliable libraries, with the goal of supporting a coherent ecosystem around functional programming in Scala. Cats and Algebra will be used as two real-world examples of libraries that are designed with these goals in mind, and with similar (but not identical) constraints.What people say. Recommended as a great talk on functional programming principles and library design in Scala.
programming-talkscurated list on GitHubRecommends
Under “Scala”
u/morazowin r/scala • Recommends
On “How much functional is enough?”