Why functional programming?
Nice article and pictures of multicores.
https://sigma.software/about/media/pillars-functional-programming-part-1
=====================
lectures on scala
https://github.com/scalasummerschool/lectures
=====================
an argument for pure functions and programming
https://dev.to/pietvandongen/pure-bliss-with-pure-functions-in-java-1mba
=====================
95 hardest sudoku problems
http://www.dos486.com/sudoku/top95.txt
=====================
code example (bar code decoder)
https://habr.com/en/post/439768/
=====================
online tutorial for scala
https://hub.mybinder.org/user/sbrunk-almond-examples-yw61qxqu/lab
=====================
Scala best practices
https://nrinaudo.github.io/scala-best-practices/index.html
=====================
codejudge
https://www.codejudge.net/docs/reference
Race Track game
Game of life
===================
https://meta.plasm.us/posts/2013/03/28/better-scala-syntax-highlighting-for-hakyll/
===================
CS quotes
https://henrikwarne.com/2016/04/17/more-good-programming-quotes/
https://henrikwarne.com/2017/09/16/more-good-programming-quotes-part-2/
===================
“To have another language is to possess a second soul.”
― attributed Charlemagne, Emperor of the Carolingian Empire (Western Europe)
-------------------
FP strongly discourages changing the state of a variable once initialized. This has a profound effect upon concurrency. If you can’t change the state of a variable, you can’t have a race condition. If you can’t update the value of a variable, you can’t have a concurrent update problem.
-------------------
8. Forced Null-Checks
In Java, the method signature of a public method does not tell you if
a returned value can be null or not. Take this signature for instance:
public List<Item> getSelectedItems()
What happens when no item is selected? Does this method then return
null? Or does it return an empty list? We do not know for sure without
looking into the implementation of this method (except we are very
lucky in this case that the signature has a good javadoc description
of the return type). There are two mistakes a developer could possibly
make: (1)fForgetting to check the return value for null when it can be
null, resulting in the famous NullPointerException, or; (2) checking
it for null although it never can be null, resulting in needless code.
why functional programming matters
http://queue.acm.org/detail.cfm?id=2038036
why pure functions
http://www.deadcoderising.com/2017-06-13-why-pure-functions-4-benefits-to-embrace-2/
BufferOverflow
http://seclists.org/oss-sec/2017/q2/344
============
wartremover
https://blog.knoldus.com/2017/06/15/remove-scala-warts-with-wartremover/
=========
Intro Videos
https://www.youtube.com/watch?v=ugHsIj60VfQ (30:00 slide about functions)
https://www.youtube.com/channel/UC1VAdzkoY7M2e3msbW9Ur8w/videos?shelf_id=0&view=0&sort=dd
===============
Scala warts
http://www.lihaoyi.com/post/WartsoftheScalaProgrammingLanguage.html
https://www.reddit.com/r/scala/comments/616n3y/could_anyone_recommend_scala_resources_that/
================
online compiler
https://scalafiddle.io/
http://www.scala-lang.org/blog/2017/05/19/scastie.html
------------------
Book
http://twitter.github.io/effectivescala/
-------------------
Very good explanation of what being functional programming means
https://dotboris.github.io/2017/04/07/functional-programming/
Source of exercises
http://exercism.io
https://www.scala-exercises.org/
http://www.sofiacole.com/technology/adopting-scala-the-next-steps/
https://medium.com/@markcanlasnyc/scala-saturday-functions-for-the-object-oriented-4218f9ed192b#.dw8x8zxvb
--------------------
Map-Reduce in Scala
https://madusudanan.com/blog/scala-tutorials-part-9-intro-to-functional-programming/
--------------------
bash scripting
https://likegeeks.com/bash-script-easy-guide/
https://likegeeks.com/linux-bash-scripting-awesome-guide-part3/
-------------------
collatz
http://codepen.io/benlorantfy/pen/KWzXoX
-------------------
cheat sheets
https://mbonaci.github.io/scala/
http://alvinalexander.com/downloads/scala/Scala-Cheat-Sheet-devdaily.pdf
http://homepage.cs.uiowa.edu/~tinelli/classes/022/Fall13/Notes/scala-quick-reference.pdf
https://www.youtube.com/watch?v=RZEZp8fqn_0
-------------------
scala books
http://underscore.io/training/
-------------------
dependent types in Scala
https://stepik.org/course/ThCS-Introduction-to-programming-with-dependent-types-in-Scala-2294/
--------------------
chess engine in scala
http://marianogappa.github.io/software/2017/03/24/ostinato-a-chess-engine-written-in-scala-that-runs-on-the-browser-docker-and-the-repl/
https://en.lichess.org
---------------------
scala code quality
https://www.reddit.com/r/scala/comments/616n3y/could_anyone_recommend_scala_resources_that/