Functional Geekery Episode 66 – Scott Wlaschin

In this episode I talk with Scott Wlaschin. We talk his introduction to functional programming and F#, making the ideas accessible without needing a math background, functional programming being similar to object oriented programming taken to the extreme, and much, much more.

Our Guest, Scott Wlaschin

@ScottWlaschin on Twitter
F# for fun and profit

Announcements

Lambda World will be taking place September 30th & October 1st, 2016. Lambda.World is the longest functional programming conference in Spain and Portugal and one of the biggest in Europe. Visit www.lambda.world to find out more and to register.

The 2016 edition of ScalaIO will take place in Lyon, France, on 27th and 28th of October. Visit http://scala.io/ for more information and to register.

CodeMesh is taking place the 3rd and 4th of November with tutorials on the 2nd of November. Tickets are available now, but they are going fast. Visit codemesh.io to register and submit your talk.

Scala Wave is coming up on the 25th and 26th of November in Gdańsk, Poland. Visit http://www.scalawave.io/ to find out more and sign up for their newsletter for updates.

Destination Code, a new unconference starting in Utah, is having its inaugural event this December. Visit http://www.destination.codes/ to find out more.

If you have a conference related to functional programming, contact me, and I will be happy to announce it.

Topics

About Scott
F# for fun and profit
Ten reasons not to use a statically typed functional programming language
F#
How Scott got introduced to functional programming
Smalltalk
Python
How Scott got introduced to F#
Haskell
OCaml
Miranda
Convenience of getting started in F#
Benefit of being on a known platform
Immutability
Partial Application
Yaron Minsky
Jane Street
Making Illegal States Unrepresentable
Learning a language by writing a blog
Reluctance to use jargon
“I had to translate Haskell into F#”
“Why do people care about Monads, Monoids, Applicatives, and all that?”
Railway Oriented Programming
Difference between giving someone tools vs giving someone a recipe
Railway Oriented Programming is really about error handling
What are some of the most well received topics from his content for getting started
FP Patterns presentation
A functional approach to Domain Driven Design
Scott’s slide on “Patterns in Functional versus Object Oriented Programming”
“How do you do a loop [if you don’t have immutability]?”
“The most common functional programming language is Excel macros
Organization of F# for fun and profit site
F# for fun and profit e-book
GitBook
Dr Frankenfunctor and the Monadster
April Fool’s post of migrating to Scala
Scala for fun and profit
Understanding fundamentals and patterns
Monoids series
The Elevated World series
Schism between mathematically oriented and humanist sides of programming
“[Functional Programming] is not that scary”
“Object Oriented design principles taken to the extreme look a lot like Functional Programming.”
The Design of Everyday Things
Don’t Make Me Think
The call to start looking into usability of your applications
What is on Scott’s radar
“If your young, learn as many languages as possible”
Learn how to be a better teacher
Dan North’s Accelerating Agile talk

As always, a giant Thank You goes to David Belcher for the logo design.

Functional Geekery Episode 65 – Morten Kromberg

In this episode I talk with Morten Kromberg. We talk his introduction to APL, the APL landscape, what the future looks like for APL, resources for getting started, and much more.

Our Guest, Morten Kromberg

@mkromberg on Twitter
About the CXO

Announcements

PWLConf 2016 is the first full-day Papers We Love conference, co-located with the preconference events at Strange Loop in Saint Louis, Missouri on September 15th. Keep an eye out for updates on pwlconf.org.

The Erlang User Conference is coming up in Stockholm, Sweden, the 6th through the 16th of September. Early Bird tickets are now available and get a 10% discount on the conference when you use the code: FunctionalGeekery10 when registering.

Lambda World will be taking place September 30th & October 1st, 2016. Lambda.World is the longest functional programming conference in Spain and Portugal and one of the biggest in Europe. Visit www.lambda.world to find out more and to register.

The 2016 edition of ScalaIO will take place in Lyon, France, on 27th and 28th of October. Visit http://scala.io/ for more information and to register.

CodeMesh is taking place the 3rd and 4th of November with tutorials on the 2nd of November. Tickets are available now, but they are going fast. Visit codemesh.io to register and submit your talk.

Scala Wave is coming up on the 25th and 26th of November in Gdańsk, Poland. Visit http://www.scalawave.io/ to find out more and sign up for their newsletter for updates.

Destination Code, a new unconference starting in Utah, is having its inaugural event this December. Visit http://www.destination.codes/ to find out more.

If you have a conference related to functional programming, contact me, and I will be happy to announce it.

Topics

About Morten
Morten’s introduction to APL
1 2 3 + 4 5 6
“Waiting for APL to dominate the world”
A Programming Language by Kenneth Iverson
Designed for teaching mathematics and arrays
50th Anniversary of APL coming up
What the user-base of APL looks like
What makes Morten still smile about using APL after all these years
Where APL fits in a application environment
Using APL for reading and crunching data
APL as a prototyping tool
Shape Invariance in APL
Optimized internal types
Symantec density of APL
Dyalog
What the future of APL might look like
Roger Hui
J language
Ability to optimize special cases of idiomatic APL
John Scholes
Point Free APL

mean← +/ ÷ ≢
⍝ “The mean is the sum (plus reduction) divided by the count (tally)” – this juxtaposition of functions is a “points free” or “tacit” form known as a “fork”: (f g h)x ←→ (f x) g (h x), inherited from classical mathematical notation, as in (f+g) x ←→ (f x) + (g x)

variance←{mean (⍵-mean ⍵)*2}
⍝ “The variance is the mean of the squares of the differences between each item and the mean of the argument”

stddev←{(variance ⍵)*0.5}
⍝ “The standard deviation is the square root of the variance”

stddev 600 470 170 430 300
⍝ 147.3227749

Try APL
How to find out more about APL
Dyalog Forums
Dyalog blog
Morten’s Google Talk
video.dyalog.apl
Conway’s Game of Life in APL
Interactive tutorial of Conway’s Game of Life on Try APL
British APL Association
Vector
K programming language
Dyalog APL version 15.0 available for non-commercial use
2016 Dyalog User Meeting
Functional Conf in Bangalore
Morten’s call to action
About the CXO
Morten’s posts on the Dyalog blog

As always, a giant Thank You goes to David Belcher for the logo design.

Functional Geekery Episode 64 – Alex Weiner

In this episode I talk with Alex Weiner. We talk his introduction to APL, comparison to Assembly and C programming, use in side projects to show examples of APL, discuss the power of APL, getting started with APL, and more.

Our Guest, Alex Weiner

@alexcweiner on Twitter
http://alexweiner.com/
[email protected]

Announcements

Compose Melbourne is a new functional programming conference focused on developing the community and bringing typed functional programming to a wider audience. Visit www.composeconference.org/ to find out more.

ElixirConf is taking place August 31st through September 2nd in Orlando, Florida. Visit http://www.elixirconf.com to register and find out more.

Full Stack Fest will be hold in Barcelona on September 5-9th. You can check out 2016.fullstackfest.com to find out more.

PWLConf 2016 is the first full-day Papers We Love conference, co-located with the preconference events at Strange Loop in Saint Louis, Missouri on September 15th. Keep an eye out for updates on pwlconf.org.

The Erlang User Conference is coming up in Stockholm, Sweden, the 6th through the 16th of September. Early Bird tickets are now available and get a 10% discount on the conference when you use the code: FunctionalGeekery10 when registering.

Lambda World will be taking place September 30th & October 1st, 2016. Lambda.World is the longest functional programming conference in Spain and Portugal and one of the biggest in Europe. Visit www.lambda.world to find out more and to register.

The 2016 edition of ScalaIO will take place in Lyon, France, on 27th and 28th of October. Visit http://scala.io/ for more information and to register.

CodeMesh is taking place the 3rd and 4th of November with tutorials on the 2nd of November. Tickets are available now, but they are going fast. Visit codemesh.io to register and submit your talk.

Scala Wave is coming up on the 25th and 26th of November in Gdańsk, Poland. Visit http://www.scalawave.io/ to find out more and sign up for their newsletter for updates.

Destination Code, a new unconference starting in Utah, is having its inaugural event this December. Visit http://www.destination.codes/ to find out more.

If you have a conference related to functional programming, contact me, and I will be happy to announce it.

Topics

About Alex
APL
Conway’s Game of Life in APL
A Programming Language
How Alex got into APL
Background in Electrical Engineering
Sticking to the classic math symbols
Math background of APL
Teaching Linear Algebra
“This should be writable on a whiteboard”
Learning APL from “masters” on the job
Similarities and differences between thinking in APL vs Assembly and C
Infix operators
“Already the math I knew”
Where APL is a benefit
Image Processing in APL
Parsing HTTP response in APL
Map and Each in APL
Max example – ⌈/ 1 7 3 9 2 5
Epsilon example – 3 5 7 9 10 ∊ 7
Various APL Examples
FizzBuzz example in APL
“What’s the qualities you want in this list”
What excites Alex about APL
How much does APL lead to complex solutions?
“You will meet all of us very quickly”
Resources for people to start learning APL
Dyalog
tryapl.org
Mastering Dyalog APL
J language
APL to J dictionary
GNU APL
J’s relation to APL
Dyalog ’16

As always, a giant Thank You goes to David Belcher for the logo design.

Functional Geekery Episode 63 – Yan Cui

In this episode I talk with Yan Cui. We talk his introduction to functional programming via Erlang and F#, getting functional languages adopted in a company, type providers, we wrap up with a rundown of a number of different languages, and much more in between.

Our Guest, Yan Cui

@theburningmonk on Twitter
http://theburningmonk.com/

Announcements

Compose Melbourne is a new functional programming conference focused on developing the community and bringing typed functional programming to a wider audience. Visit www.composeconference.org/ to find out more.

ElixirConf is taking place August 31st through September 2nd in Orlando, Florida. Visit http://www.elixirconf.com to register and find out more.

Full Stack Fest will be hold in Barcelona on September 5-9th. You can check out 2016.fullstackfest.com to find out more.

PWLConf 2016 is the first full-day Papers We Love conference, co-located with the preconference events at Strange Loop in Saint Louis, Missouri on September 15th. Keep an eye out for updates on pwlconf.org.

The Erlang User Conference is coming up in Stockholm, Sweden, the 6th through the 16th of September. Early Bird tickets are now available and get a 10% discount on the conference when you use the code: FunctionalGeekery10 when registering.

Lambda World will be taking place September 30th & October 1st, 2016. Lambda.World is the longest functional programming conference in Spain and Portugal and one of the biggest in Europe. Visit www.lambda.world to find out more and to register.

Scala Wave is coming up on the 14th and 15th of October in Gdańsk, Poland. Visit http://www.scalawave.io/ to find out more and sign up for their newsletter for updates.

The 2016 edition of ScalaIO will take place in Lyon, France, on 27th and 28th of October. Visit http://scala.io/ for more information and to register.

CodeMesh is taking place the 3rd and 4th of November with tutorials on the 2nd of November. Tickets are available now, but they are going fast. Visit codemesh.io to register and submit your talk.

Destination Code, a new unconference starting in Utah, is having its inaugural event this December. Visit http://www.destination.codes/ to find out more.

If you have a conference related to functional programming, contact me, and I will be happy to announce it.

Topics

About Yan
Gamesys
Yubl
A look at Microsoft Orleans through Erlang-tinted glasses
Membase
Erlang
Tomas Petricek
Real-World Functional Programming by Tomas Petricek
F#
Microsoft Orleans
What appealed to Yan about Erlang
Message passing in Erlang
Alan Kay’s definition of Object Oriented
Growing Object Oriented Software, Guided by Tests
What appealed to Yan about F#
Simon Cousin moving to F#
Type system of F#
Making legal states unrepresentable in your program
Edwin Brady on Episode 54
Getting a junior developer up to speed on F# in two weeks
Difference in way of thinking vs syntax between F# and C#
Lessons learned introducing F# to a company
Type Providers
Evelina Gabasova
Integration to other languages via Type Providers
Overview of what it means to write a Type Provider
Michael Newton’s Type Providers from the Ground Up
Elm
Reactive Extensions
Elm Architecture
Idris
Dependent Types
Rust
Shared Borrowed Pointers
F# Unit of Measure types
Mars Climate Orbiter bug
Go
Implicit interfaces
Clojure
Macros
Elixir
Haskell
Upcoming appearances
Leetspeak 2016
CodeMesh
Look at serverless technologies
“Learn F#, use F#”
Scott Wlaschin’s F# for Fun and Profit

As always, a giant Thank You goes to David Belcher for the logo design.

Functional Geekery Episode 62 – Lars Hupel

In this episode I talk with Lars Hupel. We talk his introduction to Functional Programming with Haskell, Scala, and move to working on Isabelle for creating theorems about proving your program.

Our Guest, Lars Hupel

@larsr_h on Twitter
Lars online

Announcements

Compose Melbourne is a new functional programming conference focused on developing the community and bringing typed functional programming to a wider audience. Visit www.composeconference.org/ to find out more.

ElixirConf is taking place August 31st through September 2nd in Orlando, Florida. Visit http://www.elixirconf.com to register and find out more.

Full Stack Fest will be hold in Barcelona on September 5-9th. You can check out 2016.fullstackfest.com to find out more.

PWLConf 2016 is the first full-day Papers We Love conference, co-located with the preconference events at Strange Loop in Saint Louis, Missouri on September 15th. Keep an eye out for updates on pwlconf.org.

The Erlang User Conference is coming up in Stockholm, Sweden, the 6th through the 16th of September. Early Bird tickets are now available and get a 10% discount on the conference when you use the code: FunctionalGeekery10 when registering.

Lambda World will be taking place September 30th & October 1st, 2016. Lambda.World is the longest functional programming conference in Spain and Portugal and one of the biggest in Europe. Visit www.lambda.world to find out more and to register.

The 2016 edition of ScalaIO will take place in Lyon, France, on 27th and 28th of October. Visit http://scala.io/ for more information and to register.

CodeMesh is taking place the 3rd and 4th of November with tutorials on the 2nd of November. Tickets are available now, but they are going fast. Visit codemesh.io to register and submit your talk.

Destination Code, a new unconference starting in Utah, is having its inaugural event this December. Visit http://www.destination.codes/ to find out more.

If you have a conference related to functional programming, contact me, and I will be happy to announce it.

Topics

About Lars
How Lars
Isabelle
Haskell
Scala
Lars’ first exposure to Haskell from a C and Java background
Using Scala as a transition strategy from OOP to FP
Importance of feedback on actual code
Programming in Scala
Writing the Travelling Sales Person problem in Haskell
Progression to tooling that assures your program is right
Lack of debugger in Haskell and Scala
Use of the REPL in Haskell and Scala
scalaz
Relation of QuickCheck and ScalaCheck to Isabelle
What is Isabelle
Ability to extract code from Isabelle
Isar
HOL higher order logic
Where Isabelle fits with other theorem proving languages
Coq
HOL Light
Agda
Idris
What Lars is working on in Isabelle
Code generation to x86 machine language
Lem
Different proving strategies available in Isabelle
Interactive Theorem Proving
Automated Theorem Proving
Tactics
Lemmas
Relationship between Tactics and Lemmas
Programming and Proving Isabelle
Archive of Formal Proofs
Gödel’s ontological proof
Typelevel
Lambda World
ITP 2016
EPFL
Check out Isabelle to know what is possible

As always, a giant Thank You goes to David Belcher for the logo design.

Functional Geekery Episode 61 – Susan Potter

In this episode I talk with Susan Potter. We talk her introduction to Functional Programming, Haskell, Erlang, reasoning about code, Nix and NixOS, reasonable deployments and environments, and more.

Our Guest, Susan Potter

@SusanPotter on Twitter
Susan on LinkedIn
Susan’s company

Announcements

Compose Melbourne is a new functional programming conference focused on developing the community and bringing typed functional programming to a wider audience. Visit www.composeconference.org/ to find out more.

ElixirConf is taking place August 31st through September 2nd in Orlando, Florida. Visit http://www.elixirconf.com to register and find out more.

Full Stack Fest will be hold in Barcelona on September 5-9th. You can check out 2016.fullstackfest.com to find out more.

PWLConf 2016 is the first full-day Papers We Love conference, co-located with the preconference events at Strange Loop in Saint Louis, Missouri on September 15th. Keep an eye out for updates on pwlconf.org.

The Erlang User Conference is coming up in Stockholm, Sweden, the 6th through the 16th of September. Early Bird tickets are now available and get a 10% discount on the conference when you use the code: FunctionalGeekery10 when registering.

Lambda World will be taking place September 30th & October 1st, 2016. Lambda.World is the longest functional programming conference in Spain and Portugal and one of the biggest in Europe. Visit www.lambda.world to find out more and to register.

The 2016 edition of ScalaIO will take place in Lyon, France, on 27th and 28th of October. Visit http://scala.io/ for more information and to register.

CodeMesh is taking place the 3rd and 4th of November with tutorials on the 2nd of November. Tickets are available now, but they are going fast. Visit codemesh.io to register and submit your talk.

Destination Code, a new unconference starting in Utah, is having its inaugural event this December. Visit http://www.destination.codes/ to find out more.

If you have a conference related to functional programming, contact me, and I will be happy to announce it.

Topics

About Susan
Reasonability of software and deployment environments
Susan’s introduction to Functional Programming
Java head and Python meta-programming
Inheriting a Haskell code base
Picking up Haskell 10 years ago and learning resources at the time
Cabal
What about Haskell clicked, or didn’t click, back then
Algebraic Data Types
Sum and Product types
Recursive data structures
Higher order types and generic types
Erlang
Period of enlightenment about isolation
Allowing things to fail
How to signify “failures”/errors in Haskell vs Erlang
Thinking about operational semantics
Scala
scalaz
Understanding the separation of concerns
Garrett Smith on Episode 56
Alignment of Erlang and thinking about operational side of applications
Typed based reasoning
Type specs in Erlang
The Dialyzer
Cloud Haskell
Reasoning using types or supervision trees in regards to error handling
NixOS
Package manager, GNU/Linux distribution, and build expression language
Per user based configuration
Multiple versions of JVM SDKs
Using Nix with Continuous Integration environments
Personal mission of reasonability of systems
Arrows
Kleisli Arrows
Railway oriented programming
Talk by John De Goes on Free structures
Aaron Levin’s blog post on the van Laarhoven encoding of free monads
Extra credit for extensible effects with the Eff monad as an alternative to monad transformers
Short typed functional programming in infrastructure engineering
Getting started in Nix and NixOS
Lethalman’s Nix pills blog series
Nix Cookbook
Upcoming talks
London Scala User Group (LSUG), London (England) – 2nd August 2016
Strangeloop, St. Louis, MO – Sept 2016
Reactive Summit, Austin, TX – Oct 2016
Reasoning about your code

As always, a giant Thank You goes to David Belcher for the logo design.

Functional Geekery Episode 60 – Paul Bone

In this episode I talk with Paul Bone. We talk his introduction to functional programming through SQL of all places, exposure to Lisp and Haskell, Mercury Language, his work on parallelism, and more.

Our Guest, Paul Bone

@Paul_Bone on Twitter
Paul can be found online at http://paul.bone.id.au/

Announcements

Compose Melbourne is a new functional programming conference focused on developing the community and bringing typed functional programming to a wider audience. Visit www.composeconference.org/ to find out more.

ElixirConf is taking place August 31st through September 2nd in Orlando, Florida. Visit http://www.elixirconf.com to register and find out more.

Full Stack Fest will be hold in Barcelona on September 5-9th. You can check out 2016.fullstackfest.com to find out more.

PWLConf 2016 is the first full-day Papers We Love conference, co-located with the preconference events at Strange Loop in Saint Louis, Missouri on September 15th. Keep an eye out for updates on pwlconf.org.

The Erlang User Conference is coming up in Stockholm, Sweden, the 6th through the 16th of September. Early Bird tickets are now available and get a 10% discount on the conference when you use the code: FunctionalGeekery10 when registering.

Lambda World will be taking place September 30th & October 1st, 2016. Lambda.World is the longest functional programming conference in Spain and Portugal and one of the biggest in Europe. Visit www.lambda.world to find out more and to register.

The 2016 edition of ScalaIO will take place in Lyon, France, on 27th and 28th of October. Visit http://scala.io/ for more information and to register.

CodeMesh is taking place the 3rd and 4th of November with tutorials on the 2nd of November. Tickets are available now, but they are going fast. Visit codemesh.io to register and submit your talk.

Destination Code, a new unconference starting in Utah, is having its inaugural event this December. Visit http://www.destination.codes/ to find out more.

If you have a conference related to functional programming, contact me, and I will be happy to announce it.

Topics

About Paul
Mercury Language
Nils Blum-Oeste asking on Twitter for Mercury
@MercuryLang on Twitter
SQL as an intro to declarative programming
Structure and Interpretation of Computer Programs
Haskell
Elevator pitch for Mercury
Structure and Interpretation of Computer Programming course online
Clues of “something more to learn about programming”
Ease of expression of Python and functional ideas of removing loops
What led Paul to look into Haskell
Paul’s introduction to Mercury
N-Queens problem and overview in Mercury
William Byrd talking miniKanren in Episode 9
Comparison between Mercury and Prolog
Predicates
miniKanren
Datalog
Strong static typing in Mercury
Paul’s work on parallelism in Mercury
Parallelism profiler
All-parallelism
Cuts as side-effects/extra-logical
Declarative Debugging in Mercury
Multiple back-ends for Mercury
Desire for a LLVM back-end for Mercury
Strongly Typed, Pure, and Eager trifecta
Mercury on Rosetta Code
Mercury users’ mailing list
#mercury on irc.freenode.net

As always, a giant Thank You goes to David Belcher for the logo design.

Functional Geekery Episode 59 – Eric Bailey

In this episode I talk with Eric Bailey. We talk his entry into functional programming; work with Scheme, Clojure, Haskell, and LFE; getting into the LFE community; interop story with other BEAM languages; Exercism.io; and much more.

Our Guest, Eric Bailey

@yurrriq on Twitter
Eric blogs at http://blorg.ericb.me/

Announcements

Compose Melbourne is a new functional programming conference focused on developing the community and bringing typed functional programming to a wider audience. Visit www.composeconference.org/ to find out more.

ElixirConf is taking place August 31st through September 2nd in Orlando, Florida. Visit http://www.elixirconf.com to register and find out more.

Full Stack Fest will be hold in Barcelona on September 5-9th. You can check out 2016.fullstackfest.com to find out more.

PWLConf 2016 is the first full-day Papers We Love conference, co-located with the preconference events at Strange Loop in Saint Louis, Missouri on September 15th. Keep an eye out for updates on pwlconf.org.

Lambda World will be taking place September 30th & October 1st, 2016. Lambda.World is the longest functional programming conference in Spain and Portugal and one of the biggest in Europe. Visit www.lambda.world to find out more and to register.

The Erlang User Conference is coming up in Stockholm, Sweden, the 6th through the 16th of September. Early Bird tickets are now available and get a 10% discount on the conference when you use the code: FunctionalGeekery10 when registering.

CodeMesh is taking place the 3rd and 4th of November with tutorials on the 2nd of November. Tickets are available now, but they are going fast. Visit codemesh.io to register and submit your talk.

Destination Code, a new unconference starting in Utah, is having its inaugural event this December. Visit http://www.destination.codes/ to find out more.

If you have a conference related to functional programming, contact me, and I will be happy to announce it.

Topics

About Eric
Lisp Flavoured Erlang
Perl
Scheme
Guile
LilyPond
“The power of language level hacking”
Haskell
Clojure
Erlang
“I really wished I reached out [to the LFE community] sooner”
Object-oriented vs functional mindset
Paradigm shift from learning Haskell
Point free style
“It made me realize how much bad stuff I was doing”
Taking the second pass at learning LFE
Feedback from the LFE community
Robert Virding’s desire to keep the core language simple and small
Docstring support in LFE
Lodox
Using LFE at work
Rebar3
“It’s great to do fun stuff at work”
LFE, Erlang, and Elixir interop
Need to include Elixir standard library at runtime
“90% of the time you don’t need to include LFE at runtime”
Decision of using existing library vs writing own in LFE
Exercism.io for LFE
LFE style guide
Goal to improve the documentation on LFE
Getting started guides targeting different backgrounds
Importance of new perspectives in the LFE community
Folding lessons back into other languages
Swiftz
Scalaz
The benefit of thinking functionally even in object oriented software
Functions that have single responsibility and no side-effects
“The more the merrier”
Appearance at Erlang User Conference 2016
Eric will not be making the Erlang User Conference this year **Updated at 2016-07-19 12:46 UTC**
LFE Slack
#erlang-lisp on Freenode.net

As always, a giant Thank You goes to David Belcher for the logo design.

Functional Geekery Episode 58 – Elise Huard

In this episode I talk with Elise Huard. We talk her introduction to functional programming, the benefit of moving between Haskell and Clojure, her book “Game programming in Haskell”, and more.

Our Guest, Elise Huard

@elise_huard on Twitter
Elise blogs at http://jabberwocky.eu/

Sponsors

This episode is sponsored by Clubhouse.io project management tools for software teams. Visit clubhouse.io/geekery to sign up for a free trial and a $50 credit. Clubhouse: dream, develop, deploy.

Announcements

Curry On is taking place July 18th and 19th in Rome. Visit curry-on.org to find out more and to register.

Compose Melbourne is a new functional programming conference focused on developing the community and bringing typed functional programming to a wider audience. Visit www.composeconference.org/ to find out more.

ElixirConf is taking place August 31st through September 2nd in Orlando, Florida. Visit http://www.elixirconf.com to register and find out more.

Full Stack Fest will be hold in Barcelona on September 5-9th. You can check out 2016.fullstackfest.com to find out more.

PWLConf 2016 is the first full-day Papers We Love conference, co-located with the preconference events at Strange Loop in Saint Louis, Missouri on September 15th. Keep an eye out for updates on pwlconf.org.

Lambda World will be taking place September 30th & October 1st, 2016. Lambda.World is the longest functional programming conference in Spain and Portugal and one of the biggest in Europe. Visit www.lambda.world to find out more and to register.

The Erlang User Conference is coming up in Stockholm, Sweden, the 6th through the 16th of September. Early Bird tickets are now available and get a 10% discount on the conference when you use the code: FunctionalGeekery10 when registering.

Destination Code, a new unconference starting in Utah, is having its inaugural event this December. Visit http://www.destination.codes/ to find out more.

CodeMesh is taking place the 3rd and 4th of November with tutorials on the 2nd of November. Tickets are available now, but they are going fast. Visit codemesh.io to register and submit your talk.

If you have a conference related to functional programming, contact me, and I will be happy to announce it.

Topics

About Elise
How Elise got into software development
Clojure
Haskell
“I decided to try and write a game in Haskell”
Game programming in Haskell
Elise’s self based research into concurrency across languages
Erlang
Akka in Scala
Go and Continuation Passing Style
How Elise got interested into functional languages
Interest in learning Haskell
First impression of Clojure and Functional programming
Structure and Interpretation of Computer Programs
“I found it [functional programming] much, much simpler”
Motivation of learning Haskell and writing a book about it
Overview of Elise’s book
QuickCheck and property based testing
Functional Reactive Programming
John Carmack on presentation Functional Programming
Thinking in networks of networks
Taking game experience back to business domains
Apache Kafka
How Elise’s Clojure has evolved
Benefit of moving back and forth between using Haskell and Clojure
clojure.spec
core.typed
test.check
What is on Elise’s radar
Apache Mesos
Game AI
“I encourage everyone to try to write a game in their favorite language”
Stephen Diehl’s What I Wish I Knew When Learning Haskell
Stephen Diehl’s Write You A Haskell
Haskell Programming from first principles by Christopher Allen and Julie Moronuki

As always, a giant Thank You goes to David Belcher for the logo design.

Functional Geekery Episode 57 – Mark Seemann

In this episode I talk with Mark Seemann. We talk his introduction to functional programming and F#, common principles between functional programming and object oriented programming, Haskell, lessons learned, planting the seeds of functional programming, and much, much more.

Our Guest, Mark Seemann

@ploeh on Twitter
Mark blogs at http://blog.ploeh.dk

Sponsors

This episode is sponsored by Clubhouse.io project management tools for software teams. Visit clubhouse.io/geekery to sign up for a free trial and a $50 credit. Clubhouse: dream, develop, deploy.

Announcements

Curry On is taking place July 18th and 19th in Rome. Visit curry-on.org to find out more and to register.

ElixirConf is taking place August 31st through September 2nd in Orlando, Florida. Visit http://www.elixirconf.com to register and find out more.

Full Stack Fest will be hold in Barcelona on September 5-9th. You can check out 2016.fullstackfest.com to find out more.

PWLConf 2016 is the first full-day Papers We Love conference, co-located with the preconference events at Strange Loop in Saint Louis, Missouri on September 15th. Keep an eye out for updates on pwlconf.org.

The Erlang User Conference is coming up in Stockholm, Sweden, the 6th through the 16th of September. Early Bird tickets are now available and get a 10% discount on the conference when you use the code: FunctionalGeekery10 when registering.

Destination Code, a new unconference starting in Utah, is having its inaugural event this December. Visit http://www.destination.codes/ to find out more.

CodeMesh is taking place the 3rd and 4th of November with tutorials on the 2nd of November. Tickets are available now, but they are going fast. Visit codemesh.io to register and submit your talk.

If you have a conference related to functional programming, contact me, and I will be happy to announce it.

Topics

About Mark
How Mark got into software development
Real-World Functional Programming: With Examples in F# and C#
LINQ
F#
“My C# programming has changed fundamentally from being exposed to F#”
“[F#] felt like coming home”
Eric Evans’ Domain Driven Design
Robert C. Martin’s Clean Code
Command Query Separation from Bertrand Meyer in Object Oriented Software Construction
Having side effects separated from the rest of your code
“Functional programming is imminently testable”
Jessica Kerr on isolation in Functional Programming on Episode 8
DHH’s article on Test-induced design damage
Michael Feathers’ Working Effectively with Legacy Code and seams in code
“Am I writing good F# code?”
Learning Haskell
The struggle of introducing good abstractions
Overview of Functor Type Class and difference between F# and Haskell
Edwin Brady on designing with types on Episode 54
Idris
How F# influences Mark’s C#
Structural Equality
Interfaces with only one method as rough equivalent to a function
Porting F# to Haskell to determine if F# is “really good”
“How do I call my database inside my function?'”
Gerard Meszaros’ xUnit Test Patterns
Direct vs Indirect inputs and outputs
Mark’s post on the migration from F# to Haskell
On evangelizing F# and functional programming
Once people start being interested it becomes easy to introduce a small library in F#
Planting the seed of an idea of F# or functional programming
Curiosity of the lack of discriminated unions in C# or Java
Overview of Mark’s Pluralsight courses
FsCheck
Interest in Clojure to see difference in statically vs dynamically typed languages

As always, a giant Thank You goes to David Belcher for the logo design.