FP-Syd meeting!


Details
FP Syd is back for 2024. We have Mark Hopkins and Tim McGilchrist presenting this month (abstracts below), and we will be looking to organise speakers for this year plus any events people would like to organise. So please come along with your ideas.
As usual, doors open at 6pm for the talks to start around 6:45.
We are always on the lookout for new (and returning!) speakers. If you'd like to present something Functional Programming related get in touch with the organisers or open a PR on http://github.com/fp-syd/meetings.
Functional Pearl: Higher-kinded Data - Mark Hopkins
A trick that can give an algebraic data type extra powers is to add a parameter that's not just a type, but a type constructor.
For instance, we can:
• reuse the same data structure for different parts of a compiler pipeline;
• simplify certain patterns of processing data with similar structures;
• create type-safe builders, where it's compilation error if a field is not set — but you can choose which field(s);
• add additional safety guarantees: e.g. a table-printing library where it's a compilation error to provide rows of different lengths.
And, by lifting familiar type classes like `Functor`, `Foldable`, `Traversable` to versions that work for our new parameterized types, we can create "smart" records, that we can, for instance, query to ask which fields were not set, or didn't parse or validate, and we can then export (or import) that data as a map keyed by field name.
We will again reserve some time for short lightning talks before the main talk of this month. If you had a great idea recently, if you have worked with a cool library you can recommend, or if you want to present something funny... the stage is yours.

Every 4th Wednesday of the month
FP-Syd meeting!