Media


Arrow Comonad Approach for GameOfLife with Android Compose

  • January 14, 2020

The purpose of this article is complement the bow + SwifUi solution for the game of live we can find here https://www.47deg.com/blog/conway-swift/ with the arrow + compose version.

Arrow Fx
post image

Kotlin coroutines with arrow-fx

  • December 15, 2019

The purpose of this article is to summarize the approaches from questions at Slack about the usage of Either, Option and other datatypes and to give a tour of arrow-fx usage and APIs.

Arrow Fx
post image


Conway's Game of Life using Kotlin and Arrow

  • December 12, 2019

An article of a series on Functional Programming solutions for the Global Day of Coderetreat challenge. In this case, it shows an approach for it using Kotlin and Functional Programming provided by the Arrow library.

Arrow Core Arrow Fx
post image

Keep insisting - Arrow Meta

  • KotlinConf, Copenhagen
  • December 06, 2019

Arrow Meta is a library that empowers library and application authors with the ability to write plugins for the Kotlin compiler. Compiler plugins have access to all compiler phases and can intercept and modify the AST, descriptors, and IR intermediate lang for bytecode generation.

Arrow Meta
post image


Arrow Fx & Arrow Meta - Functional Programming for the masses

  • Functional JVM Meetup, Prague
  • November 27, 2019

In this meetup we discuss the new features of Arrow Fx to write “effectful” programs with an emphasis on simple and declarative programming for everyone. Additionally, we see how Arrow Meta works and how we can use it to improve the ergonomics of Functional Programming in Kotlin.

Arrow Meta Arrow Fx
post image

Arrow Meta - Enabling Functional Programming in the Kotlin Compiler

  • Lambda World, Cádiz, Spain
  • October 18, 2019

Arrow Meta is a library that empowers library and application authors with the ability to write plugins for the Kotlin compiler. Compiler plugins have access to all compiler phases and can intercept and modify the AST, descriptors, and IR intermediate lang for bytecode generation.

Arrow Meta
post image

Kotlin and Arrow: the functional way

  • xConf, Barcelona, Spain
  • August 08, 2019

Kotlin is a great language for developing server-side applications; it’s an object-oriented language and also a functional one, supporting features such as function types, lambdas or higher order functions. But…is this enough to switch completely from an imperative paradigm to a functional paradigm?

In this talk by Noe Luaces, we’ll see how features from Arrow library completes Kotlin in order to follow a pure functional way.

Arrow Core
post image

Effect polymorphism with Arrow FX

  • July 22, 2019

Wonder how to handle side effects in a very clean way while abstracting the real effect implementation? #Arrow #FX provides an easy way to do this, without the burden of Higher-Kinded Types.

Arrow Fx
post image


Self-contained example of testing with modules and Arrow FX

  • July 05, 2019

This post shows a porting with Kotlin and Arrow FX of a self-contained testing example with Scala ZIO

Arrow Core Arrow Fx
post image

Modular functional programming with Kotlin

  • July 02, 2019

This post proposes a possible solution in order to structure and compose a pure functional Kotlin application, in order to better manage and decouple modules, get simpler tests and manage the Dependency Injection at compile time.

Arrow Core
post image

ArrowFx: Functional Programming for the masses

  • Kotliners, Budapest
  • June 07, 2019

In this talk we recap about the imminent future of Functional Programming in Kotlin. With ArrowFx you are able to encode “effectful” programs in a controlled way following the FP principles through a direct syntax. You’ll think you’re writing imperative code!

Arrow Fx
post image

How KEEP-87 & Typeclasses will change the way we write Kotlin

  • June 04, 2019

Short introduction into the proposal KEEP-87 and how it would be able to improve the language.

Arrow Core
post image

Introducing Arrow Playground

  • April 11, 2019

Arrow Playground is a JavaScript library that creates Kotlin-aware, including Arrow, editors capable of running code from HTML block elements. This is a fork of the original Kotlin Playground work done by the JetBrains team.

Arrow Core
post image


Immutable Conversations - Past and Future of Arrow

  • March 12, 2019

In this episode, we capture a conversation between Arrow maintainers Raúl Raja and Paco Estevez as they discuss the past and future of the library which is designed to bring Functional Programming to Kotlin.

Arrow Core Arrow Fx
post image


From Imperative to Functional Programming using Arrow

  • February 10, 2019

As its name implies, From Imperative to Functional Programming using Arrow is a tale about migrating a simple Kotlin application written in imperative style to a fully function application with the help of the Arrow library.

Arrow Core Arrow Fx
post image


Webflux with Kotlin and Arrow

  • February 03, 2019

Webflux with Kotlin and Arrow shows how you can use Arrow together with Spring Webflux to create a reactive REST application. This article explains how to use the MonoK and the FluxK Arrow extensions together with the binding function to make working with the Mono and Flux reactor constructs much easier and better understandable.

Arrow Core Arrow Fx
post image


Getting started with FP in Kotlin and Arrow: Typeclasses

  • January 03, 2019

Getting started with FP in Kotlin and Arrow: Typeclasses explores part of the Arrow library by explaining how you can use Arrow to create your own typeclasses and use the ones provided by Arrow to make your code more concise and better readable.

Arrow Core Arrow Fx
post image


Functional Hangman Game written with Arrow

  • November 30, 2018

Functional Hangman game - console application written with Arrow. Uses the IO<A> monad to push side effects to the edge of the system.

Arrow Core Arrow Fx
post image


Manual documentation is dead. Long live automated documentation! Automated documentation with ΛNK

  • droidconSF, San Francisco
  • November 24, 2018

It includes how the ΛNK plugin works: from having a tool that evaluates and verifies your doc snippets at compile time, to generating code documentation that is always correct and up to date.

Arrow Core Arrow Incubator
post image




Arrow Tiny Cards Flashcards

  • November 15, 2018

Arrow-kt collection: data types, type classes, effects, optics, generic, free, recursion schemes.

Contact Ersin on Gitter or Slack if you have more concise/simpler definitions, can correct misinterpretations, or can help with a deck.

Arrow Core Arrow Optics Arrow Fx Arrow Incubator
post image

Simple Dependency Management in Kotlin

  • AndroidTO, Toronto
  • November 07, 2018

In this talk we introduce the concepts of Dependency Management as a language feature, typeclasses, and a live demo of KEEP-87. You can follow along the example in this folder.

Arrow Core
post image


Architecting Typed FP Applications & Libraries in Kotlin with Λrrow

  • KotlinConf, Amsterdam
  • October 05, 2018

This talk includes a comprehensive walkthrough of the most important patterns covered by the data types and type classes we find in Λrrow. Each pattern will be accompanied by code examples that illustrate how Λrrow brings Typed Functional Programming to Kotlin.

Sources and slides

Arrow Core Arrow Fx
post image

Arrow and Functional Programming for Kotlin Developers

  • DroidJam India, Bangalore, India
  • July 24, 2018

A beginner level introduction to Functional Programming for Kotlin and/or Android Developers or developers with OOP background.

Arrow Core
post image

Functional Programming in Kotlin with Arrow by Emmanuel Nhan

  • Sunny Tech, Montpellier
  • June 27, 2018

@nhanmanu introduces Kotlin and how it is a good fit for functional programming. The talk goes through some interesting features of Kotlin, then show how to use them to enter the world of Higher Kinds and Typeclasses. In the last part, we explore some Arrow capabilities & built-in syntax, using validation as an example.

Arrow Core
post image




State of the functional ecosystem in Kotlin: Mid 2018 checkup

  • Conference for Kotliners, Budapest
  • June 24, 2018

This talk focuses on the day-to-day problems Arrow solves, from small ideas to big concepts.

It includes an overview of all the modules available, and some of the 3rd party libraries made by the community.

Arrow Core Arrow Optics Arrow Fx Arrow Incubator
post image

Higher Kinded Types in a Lower Kinded Language by Jacob Bass

  • Yow! Lambda Jam, Sydney, Australia
  • June 22, 2018

It’s hard coming back down to the earth of a JVM based language after spending time with Haskell and OCaml. This talk will discuss functional programming in Kotlin with the Arrow library, how the abstractions it provides can improve your code, and how this magic that provides higher-kinded types works under the hood.

Arrow Core
post image

1/n - How do I… in FP: Validation

  • April 23, 2018

Emmanuel Nhan showcases different approaches to validation including examples for ValidatedNel from Arrow in this great and in depth post using Kafka Streams Config parameters as example.

1/n - How do I… in FP: Validation

Arrow Core
post image

Introduction to Kotlin Arrow by Jacob Bass

  • Kotlin Meetup, Sydney
  • March 26, 2018

@bassjacob goes through how Funktionale and Kategory merged into Arrow, consolidating two of the most popular FP libraries in the Kotlin space into one powerhouse. The talk is an introduction to some FP concepts, how the libraries work, what features they bring to the table and where you might use them in your code.

Arrow Core
post image

It's all about morphisms

  • Voxxed Days, Vienna
  • March 21, 2018

@uberto gives a gentle introduction to Category Theory for programmers used to OOP but interested in Functional Programming. No Haskell knowledge required. We will explain main concepts behind functional programming with many diagrams and simple metaphors and examples. Some code will clarify how to translate these ideas in programs.

Arrow Core
post image


Optics and Type Classes in Arrow

  • Kotlin Brooklyn Meetup
  • January 17, 2018

@msya explains how to use various optics and type classes in Arrow. He discusses optics such as Lens and Iso. He also goes over the purpose for type classes and how KEEP-87 will make it easier to implement them.

Functional Programming with Arrow

Arrow Core Arrow Optics
post image

Functional Programming in Kotlin with Arrow

  • Lambda World, Cádiz
  • November 29, 2017

A rundown of all the features included in the library, focusing on implementation details.

Arrow Core
post image

Building a DSL… in Kotlin

  • droidconSF, San Francisco
  • November 24, 2017

Make DSLs stack safe, composable and reusable under different runtime requirements thanks to Arrow.

Arrow Core
post image

Architectures Using Functional Programming Concepts

  • KotlinConf, San Francisco
  • November 17, 2017

Introductory talk to Functional architectures to be built on top of Arrow.

Arrow Core
post image

Kotlin for the Pragmatic Functionalist

  • KotlinConf, San Francisco
  • November 09, 2017

An introduction to Arrow and the enhancements it brings to Kotlin’s standard library.

Arrow Core
post image

Functional approach to Android architecture using Kotlin

  • Mobilization 7, Łódź
  • October 20, 2017

Move side effects to the edges of the system, implement a functional oriented architecture for Android apps based on purity.

Arrow Core
post image





Arrow Docs

  • August 01, 2017

Take a look at the Λrrow documentation Here. Test and modify real-time code snippets.

Arrow Core Arrow Optics Arrow Fx Arrow Incubator Arrow Meta

Books

Recommended reading for learning Functional Programming in Kotlin from Arrow maintainers, users, and the Kotlin ecosystem:

Do you like Arrow?

Arrow Org
<