Your SlideShare is downloading. ×
1.7 functional programming
1.7 functional programming
1.7 functional programming
1.7 functional programming
1.7 functional programming
1.7 functional programming
1.7 functional programming
1.7 functional programming
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

1.7 functional programming

462

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
462
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Functional programming
  • 2. “Functional programming”First class functionsPattern matchingHigher order functions
  • 3. Functional programmingPurityMathematical functions have no side effects f(x) = 2x + 3 y = sin(x)Only immutable objects (and object graphs)
  • 4. In practiceAll field must be immutableAll methods must return somethingNo side-effects from method calls
  • 5. Listhead :: tailPrepends to the head of the listOther operations (filter, map, remove, partition...) returns a new List instance
  • 6. scala.collection.immutable...or scala.collection.mutablePick your poison!
  • 7. Scala 2.8Case classes get copy methodsConstructors and methods get default parameters named parameters
  • 8. Strive to be pureParallelization and concurrency (no synchronization)Usually easier to find errors (a lot less state)Easier to test

×