Zum Inhalt springen

Details

# Schedule

18:45 Doors Open & Welcome

19:00 A Tour of Polarity (Tim)

There is a fundamental difference between how we structure programs in object-oriented and functional programming. In object-oriented programming, we model our domain using interfaces and classes, with methods defining the behavior of objects. In functional programming, we model our domain using algebraic data types and define their behavior through functions that pattern match on them. This design choice directly affects the extensibility of a program: adding new data variants is easy in the object-oriented style, while adding new operations is easy in the functional style. This trade-off is known as the expression problem.
Modern programming languages are typically multi-paradigm, combining features from both traditions. However, they rarely support both styles equally well. Which representation to prefer is therefore not only a question of the problem domain, but also a question of language support. Can we get the best of both worlds?
In this talk, we will study this question through the lens of Polarity, a research programming language with symmetric support for both functional and object-oriented program decomposition. Because Polarity is dependently typed, we can also use its type system to statically ensure important properties of our programs. We will consider how the choice of programming style affects not only extensibility, but also the way such properties are stated and verified.

Food, Talking, Coding

22:00 End

# Sign Up

If you plan to attend the meetup, please sign up for it so that we can plan accordingly (i.e. order enough pizza!)
If you want to give a talk at one of the next meetups, please add your topic as an issue to this GitHub Repo here.
In case you need some inspiration, either take a look at all the previous talks on this website, or take a look at all the talks suggested so far here.

# Contact

Do you want to keep posted about the next event or continue the discussion? Maybe you even want to contribute a talk yourself?
Join our Matrix Room

Verwandte Themen

Functional Programming
Programming Languages
Software Development

Das könnte dir auch gefallen