153
Things that Matter Decisions that Shape Languages

things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Things that MatterDecisions that Shape Languages

Page 2: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 3: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 4: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

the incubator

Page 5: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 6: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

“The primary motivation was to amuse myself.”

Page 7: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

“I like the way it makes programming enjoyable.”

- Matz

Page 8: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 9: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 10: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

“So, we started Lua with the very specific goal of providing a language for problems that need a

good configuration language.”- Roberto Ierusalimschy

Page 11: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

“So, we started Lua with the very specific goal of providing a language for problems that need a

good configuration language.”- Roberto Ierusalimschy

Page 12: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

elm

Page 13: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

elmThe best of functional programming in your browser

Page 14: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

elm“Many functional folks have a way of saying

extremely interesting and useful things in a totally inaccessible impractical way, and I wanted to fix this.”

Page 15: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

elm“Many functional folks have a way of saying

extremely interesting and useful things in a totally inaccessible impractical way, and I wanted to fix this.”

Page 16: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

elm“Many functional folks have a way of saying

extremely interesting and useful things in a totally inaccessible impractical way, and I wanted to fix this.”

Page 17: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

elm“Many functional folks have a way of saying

extremely interesting and useful things in a totally inaccessible impractical way, and I wanted to fix this.”

Page 18: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

elm

Page 19: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

elm“Elm is not about being theoretically better. It is

about being demonstrably better.”

- Evan Czaplicki

Page 20: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Haskell

Page 21: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Haskell

Page 22: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Haskell“On the lazy side (of FP), you had as

many programming languages as there were researchers.”

Page 23: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Haskell“If he (David Turner, Miranda) had said yes (to

making Miranda the single standard for research of lazy FP), Haskell would not exist.”

- John Hughes

Page 24: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Haskell

Page 25: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 26: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

“I wanted a Lisp for Functional Programming, symbiotic with an established

Platform, and designed for Concurrency.”

Page 27: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

“I wanted a Lisp for Functional Programming, symbiotic with an established

Platform, and designed for Concurrency.”

Page 28: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

“I wanted a Lisp for Functional Programming, symbiotic with an established

Platform, and designed for Concurrency.”

Page 29: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

“I wanted a Lisp for Functional Programming, symbiotic with an established

Platform, and designed for Concurrency.”

Page 30: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

“I wanted a Lisp for Functional Programming, symbiotic with an established

Platform, and designed for Concurrency.”- Rich Hickey

Page 31: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 32: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

“A simple, object-oriented, distributed, interpreted, robust, secure, architecture neutral, portable, high-

performance, multithreaded, and dynamic language.”

Page 33: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

“A simple, object-oriented, distributed, interpreted, robust, secure, architecture neutral, portable, high-

performance, multithreaded, and dynamic language.”

Page 34: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

“A simple, object-oriented, distributed, interpreted, robust, secure, architecture neutral, portable, high-

performance, multithreaded, and dynamic language.”

Page 35: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

“A simple, object-oriented, distributed, interpreted, robust, secure, architecture neutral, portable, high-

performance, multithreaded, and dynamic language.”

Page 36: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

“A simple, object-oriented, distributed, interpreted, robust, secure, architecture neutral, portable, high-

performance, multithreaded, and dynamic language.”

Page 37: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

“A simple, object-oriented, distributed, interpreted, robust, secure, architecture neutral, portable, high-

performance, multithreaded, and dynamic language.”

Page 38: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

“A simple, object-oriented, distributed, interpreted, robust, secure, architecture neutral, portable, high-

performance, multithreaded, and dynamic language.”

Page 39: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

“A simple, object-oriented, distributed, interpreted, robust, secure, architecture neutral, portable, high-

performance, multithreaded, and dynamic language.”

Page 40: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

“A simple, object-oriented, distributed, interpreted, robust, secure, architecture neutral, portable, high-

performance, multithreaded, and dynamic language.”

Page 41: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

“A simple, object-oriented, distributed, interpreted, robust, secure, architecture neutral, portable, high-

performance, multithreaded, and dynamic language.”

Page 42: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

“A simple, object-oriented, distributed, interpreted, robust, secure, architecture neutral, portable, high-

performance, multithreaded, and dynamic language.”

Page 43: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

...

Page 44: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

?

Page 45: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

.

Page 46: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

the incubator

Page 47: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Your originsshape you

Page 48: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Know your community

Page 49: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 50: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 51: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 52: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 53: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

• Population

• Support

• Investment

Page 54: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 55: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

• Population

• Support

• Investment

Page 56: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

• Population

• Community

• Investment

Page 57: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

elm

Page 58: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

elm

• Population

• Support

• Investment

Page 59: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 60: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

elm

Page 61: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 62: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 63: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

MINSWAN

Page 64: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Matz Is Nice So We Are Nice

Page 65: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Matz Is Nice So We Are Nice

Page 66: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

MINSWAN

Page 67: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Polish

Page 68: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 69: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 70: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 71: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 72: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 73: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Know your community

Page 74: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Make a Stand

Page 75: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 76: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Syntax has a profound impact on marketshare

Page 77: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Syntax has a profound impact on productivity

Page 78: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

“Languages are enhancers for your mind that shape the way

you attack programming.”

Sugar makes programmers more productive

Page 79: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Syntax must be simple

Page 80: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Syntax must be simple

Page 81: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Syntax has a profound impact on marketshare

Page 82: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Syntax has a profound impact on program design

Page 83: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Syntax must be profoundlysimple and uniform

Page 84: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Syntax must be profoundlysimple and uniform

Page 85: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Syntax must be profoundlysimple and uniformThe tree

Page 86: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Syntax must be profoundlysimple and uniformThe tree

Page 87: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Syntax has a profound impact on marketshare

Page 88: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Syntax has a profound impact on marketshare

Page 89: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Syntax has a profound impact on marketshare

Page 90: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

StandsStands

Page 91: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Haskell

Page 92: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

We will be lazy

Page 93: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Our functions will be pure

Page 94: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Our types are strict and static

Page 95: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 96: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Make concurrency simple

Page 97: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Let it crash

Page 98: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

elm

Page 99: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Approachable Theory

Page 100: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Callbacks Stink

Page 101: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Make a Stand

Page 102: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Adapt or die.

Page 103: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 104: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 105: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 106: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 107: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 108: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

EfficientProgramDesign

Page 109: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Idea

Page 110: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Idioms

Page 111: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Abstractions

Page 112: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 113: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 114: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

classObject

defblank?

false

end

end

classString

defblank?

self==""

end

end

classNilClass

defblank?

true

end

end

[nil,4,""].mapdo|item|

item.blank?

end

Page 115: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

EfficientProgramDesign

Page 116: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

EfficientProgramDesign

Page 117: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

EfficientLanguageDesign

Page 118: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Adaptation

Page 119: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Extension

Page 120: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 121: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 122: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Macros

Page 123: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 124: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

(+ 1 2)

Page 125: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

('+ 1 2)

Page 126: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 127: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Top=self,

Ref=make_ref,

Pid=spawn_link(fun->

Top!{Ref,...}

),

receive

{Ref,Value}->Value

end

Page 128: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and
Page 129: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

task=Task.async(&do_something/0)

#dosomethingconcurrently

result=Task.await(task)

Page 130: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

||

Page 131: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

|>

Page 132: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

defmacro

Page 133: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

defprotocol

Page 134: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

widgets

|>Enum.filter...

|>Enum.map...

|>Enum.take(5)

Page 135: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

widgets

|>Stream.filter...

|>Stream.map...

|>Enum.take(5)

Page 136: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

widgets

|>Stream.expensive1...

|>Stream.expensive2...

|>Enum.take(5)

Page 137: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

widgets

|>Stream.expensive1...

|>?

|>Stream.expensive2...

|>?

|>Enum.take(5)

Page 138: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

widgets

|>Stream.expensive1...

|>async_process...

|>Stream.expensive2...

|>async_process...

|>Enum.take(5)

Page 139: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

widgets

|>Expensive.task1...

|>?

|>Expensive.task2...

|>?

|>Enum.take(5)

Page 140: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

widgets

|>Expensive.task1...

|>process_farm(10)

|>Expensive.task2...

|>process_farm(20)

|>Enum.take(5)

Page 141: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

widgets

|>Expensive.task1...

|>distribute(10)

|>Expensive.task2...

|>distribute(20)

|>Enum.take(5)

Page 142: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

widgets

|>distribute(20)

|>Stream.expensive1...

|>Stream.expensive2...

|>Stream.expensive3...

|>Enum.take(n)

Page 143: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Other Examples

Page 144: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Other Examples

Haskell

Page 145: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Other Examples

elm

Haskell

Page 146: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Other Examples

elm

Haskell

Page 147: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Other Examples

elm

Haskell

Page 148: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Adapt or die

Page 149: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Your originsshape you

Page 150: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Know your customer

Page 151: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Make a Stand

Page 152: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

Adapt or die

Page 153: things that matter - Lambda Days · 2016-12-19 · The best of functional programming in your browser. elm “Many functional folks have a way of saying extremely interesting and

?