Func Prog Sweden

Func Prog Sweden is the community for anyone interested in functional programming. At the MeetUps the community explore different functional languages like Erlang, Elixir, Haskell, PureScript, Elm, Scala, Clojure, ClojureScript, OCaml, F#, Agda, and more. The MeetUp community has also explored the functional aspects of C++, Java and more.

Head over to MeetUp to join the community to learn more, meet other people interested in functional programming and have fun.

Ada Beat has been a proud sponsor of Func Prog Sweden since its inception.

Func Prog Sweden
Introduction to Roc Programming Language by Richard Feldman

Introduction to Roc Programming Language by Richard Feldman

Richard Feldman introduces the Roc programming language as a fast, friendly, and functional language in active development, featuring a small ecosystem. He covers Roc’s syntax, emphasizing assignments, list.map, and lambdas, while highlighting its purely functional nature. Roc’s error handling and type inference capabilities are discussed, showcasing how the compiler infers types and prevents errors from spreading.

Building a Vite plugin for F# by Florian Verdonck

Building a Vite plugin for F# by Florian Verdonck

In the Building a Vite plugin for F# presentation, Florian Verdonck explores the development of an F# application using Vite, a development server, and Fable, a compiler for transforming F# code to JavaScript. Florian discusses the challenges of connecting F# to Vite and the benefits of using Fable for hot module reloading. He also shares his reservations about the recommended way of using Fable within Vite and introduces the concept of creating a Fable plugin for Vite to improve the development experience.

Algebraic Effects from Scratch by Kit Langton

Algebraic Effects from Scratch by Kit Langton

Algebraic Effects from Scratch is a presentation by Kit Langton, delivered at the Func Prog Sweden MeetUp. In this comprehensive overview, we delve into Kit’s demonstration of building a simple console DSL (Domain Specific Language) using algebraic effects and extending it with sequential composition and arbitrary effects.

Dyadic Decomposition using Functional lenses by Eduardo Lemos

Dyadic Decomposition using Functional lenses by Eduardo Lemos

In the presentation Making Imperative Functional: Dyadic Decomposition by Eduardo Lemos, Eduardo shares his background in functional programming and introduces dyadic decomposition as a method for compressing large 3D data objects, such as point clouds, using functional programming techniques.

REPL-driving the browser by Josh Glover

REPL-driving the browser by Josh Glover

In the presentation REPL-driving the browser, Josh Glover discusses his experience using ClosureScript, a JavaScript compiler, and REPL technology. He expresses his preference for using Emacs and his frustration with the inefficiency of engaging with ClosureScript through a terminal and REPL window. He introduces Skittle and SAI from the closure community, explaining their roles as small closure interpreters.

How do we optimise Scala build times? by James Thompson

How do we optimise Scala build times? by James Thompson

In the How do we optimize Scala build times? presentation by James Thompson, a developer at the Scala Center discusses various techniques for optimizing Scala build times using standard ecosystem tools. Scala, a functional programming language that runs on the Java virtual machine, has a complex compiler with over 100 phases of transformation, leading to lengthy build times.

Programming with Effect Handlers by Sudha Parimala

Programming with Effect Handlers by Sudha Parimala

Sudha Parimala introduces the concept of effect handlers, a mechanism for nonlinear control flow in programs that allows for the suspension and resumption of computations. She explains that effect handlers are similar to exception handlers but can resume computation from where it was left off, and provides examples of how they can be used to build programming abstractions such as generators, asynchronous programming, and lightweight threads.

Went: GoJS diagrams in PureScript by André Muricy

Went: GoJS diagrams in PureScript by André Muricy

In the presentation Went: GoJS diagrams in PureScript, André Muricy discusses his library Went, which enables the use of the GoJS diagrams library in a PureScript setting. GoJS is a powerful and expressive JavaScript library for creating dynamic and interactive diagrams. André provides an overview of GoJS, highlighting its object-oriented structure and TypeScript support.

Better software design with domain modeling by Eric Normand

Better software design with domain modeling by Eric Normand

In the presentation Better software design with domain modeling by Eric Normand, he emphasizes the importance of making good decisions and having good information for effective software design. Using the domain of a coffee shop as an example, Eric demonstrates the concept of domain modeling through types, relationships, and encoding options.