<commit_before># Examples using Scalaz

## Build
Building is controled by gradle, to make sure that scalaz/scala are downloaded, and the code compiles, run

```
./gradlew clean build
```

## Type-Classes
  * Equal
  * Show
  * Applicative
  * Order

## Monads
  * State
  * Reader/Writer
  * Free

## Symbols
  * \/
  * |@|
  * boolean ? true | false

## Util
  * NonEmptyList
  * Lens
  * Pointed
  * Collections Extensions
  * Functor
  * Validation
  * Memo/memoization

## How the magic happens
  * Type-Classes
  * Higher-Kinds

## IO
  * IO Monad
    * How to handle errors
  * Processes

## References
  * Scalaz - The Good Parts : http://www.youtube.com/watch?v=jPdHQZnF56A
  * Scalaz for the Rest of Us : http://www.youtube.com/watch?v=kcfIH3GYXMI
  * Learning scalaz : http://eed3si9n.com/learning-scalaz-day1
  * Learn You a Scalaz : https://github.com/jrwest/learn_you_a_scalaz/blob/master/1-intro.md
  * Scala School : http://twitter.github.io/scala_school/type-basics.html
  * The Typeclass Pattern - An Alternative to Inheritance : https://www.youtube.com/watch?v=yYo0gANYViE&list=PLk1rxAmpqRVLeBfjaQnULpDrN-FI9BOij
  * <NAME>: Don't fear the Monad : https://www.youtube.com/watch?v=ZhuHCtR3xq8&list=PLk1rxAmpqRVLeBfjaQnULpDrN-FI9BOij
  * Learning Scalaz : https://thenewcircle.com/s/post/1578/learning_scalaz_eugene_yokota_video
  * Hacking Scala : http://hacking-scala.org/post/49050104489/scalaz-resources-for-beginners<commit_msg>added another reference<commit_after># Examples using Scalaz

## Build
Building is controled by gradle, to make sure that scalaz/scala are downloaded, and the code compiles, run

```
./gradlew clean build
```

## Type-Classes
  * Equal
  * Show
  * Applicative
  * Order

## Monads
  * State
  * Reader/Writer
  * Free

## Symbols
  * \/
  * |@|
  * boolean ? true | false

## Util
  * NonEmptyList
  * Lens
  * Pointed
  * Collections Extensions
  * Functor
  * Validation
  * Memo/memoization

## How the magic happens
  * Type-Classes
  * Higher-Kinds

## IO
  * IO Monad
    * How to handle errors
  * Processes

## References
  * Scalaz - The Good Parts : http://www.youtube.com/watch?v=jPdHQZnF56A
  * Scalaz for the Rest of Us : http://www.youtube.com/watch?v=kcfIH3GYXMI
  * Learning scalaz : http://eed3si9n.com/learning-scalaz-day1
  * Learn You a Scalaz : https://github.com/jrwest/learn_you_a_scalaz/blob/master/1-intro.md
  * Scala School : http://twitter.github.io/scala_school/type-basics.html
  * The Typeclass Pattern - An Alternative to Inheritance : https://www.youtube.com/watch?v=yYo0gANYViE&list=PLk1rxAmpqRVLeBfjaQnULpDrN-FI9BOij
  * <NAME>: Don't fear the Monad : https://www.youtube.com/watch?v=ZhuHCtR3xq8&list=PLk1rxAmpqRVLeBfjaQnULpDrN-FI9BOij
  * Learning Scalaz : https://thenewcircle.com/s/post/1578/learning_scalaz_eugene_yokota_video
  * Hacking Scala : http://hacking-scala.org/post/49050104489/scalaz-resources-for-beginners
  * Practical Scalaz : https://skillsmatter.com/skillscasts/2518-practical-scalaz-2518
{'fraction_non_alphanumeric': 0.11986644407345576, 'fraction_numerical': 0.022036727879799666, 'mean_word_length': 3.725552050473186, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 9, 'lorem ipsum': 0, 'www.': 8, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6826619', 'n_tokens_mistral': 1199, 'n_tokens_neox': 1128, 'n_words': 214}