Hopp til hovedinnhold

Simen Endsjø

9 innlegg

Gather, Aggregate, Decide, Act

Utvikling
Artikkel (10 min)
Fra Simen Endsjø
22.12.2022

A simple diff for date/time duration changes

Utvikling
Artikkel (4 min)
Fra Simen Endsjø
21.12.2022

A quick peek at lisp macros

Utvikling, lisp, macro
Artikkel (8 min)
Fra Simen Endsjø
20.12.2022

Macros enable developers to extend a language to accomodate future or domain specific needs without waiting for language updates. In this post, we extend the control flow of the language.

A Functional Architecture Demo

Funksjonell
Artikkel (11 min)
Fra Simen Endsjø
22.12.2020

When I first started learning functional programming, I had already been programming for many years, mostly in object oriented languages the last decade. How would the architecture for a functional program look like? How can we avoid mutation, which is a cornerstone of OOP? How can functions be used as an abstraction?

Getting started with F#

Funksjonell
Artikkel (5 min)
Fra Simen Endsjø
17.12.2020

F# is a fun and mature functional-first programming language for the .NET platform. Taking the first steps to learn a new language can be daunting, so in this post, we'll give some pointers on where to start.

Open ≠ Free ≠ Gratis

Open source
Artikkel (13 min)
Fra Simen Endsjø
18.12.2019

Software has become an integrated part of life. It's everywhere, and the complexity is increasing. As developers, we're standing on the shoulders of giants. Most of the software running in our applications is written by someone else. But do you know what you're allowed to use the software for? And what your obligations are when using the software? All software has a license, which means it contains legal talk which "authorize the use, performance, or release of (something)."

Map and bind - A hidden functional concept in C#

Funksjonell
Artikkel (5 min)
Fra Simen Endsjø
15.12.2019

In this post, I'll show that C# implements the functional concepts map and bind. I'll further show that these are useful for other contexts than just collections with an example implementation for Task<T>. We'll then clean up a process by using map and bind to compose a new process of several smaller processes. Hopefully this will show that functional concepts both exists and are useful even in non-functional languages.

Iteration without for, foreach or while

Funksjonell
Artikkel (2 min)
Fra Simen Endsjø
07.12.2019

Iteration is part of the bread and butter of any programming language, and this is the case in functional programming just as much as in imperative programming, but how is it possible to iterate without for, foreach or while?

The F of FP

Funksjonell
Artikkel (7 min)
Fra Simen Endsjø
02.12.2019

Architecture in Functional Programming (FP) and Object Oriented Programming (OOP) is very different. While the class is the main abstraction in OOP, the function is the abstraction in FP. Looking over the fence, it seems impossible to solve problems using the other paradigm. In order to learn how to design program with functions, we must first learn how they work in FP as a function is not the same as a method.