├── .github └── ISSUE_TEMPLATE │ ├── errata-or-suggestion.md │ └── fp-issue.md ├── .gitignore ├── 01 ├── Magic.playground │ ├── Pages │ │ ├── 01TheTrick.xcplaygroundpage │ │ │ ├── Contents.swift │ │ │ └── Sources │ │ │ │ ├── MagicCard.swift │ │ │ │ ├── MagicDeck.swift │ │ │ │ └── Modifications.swift │ │ ├── 02ACard.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 03TheMutatingCard.xcplaygroundpage │ │ │ ├── Contents.swift │ │ │ └── Sources │ │ │ │ └── MutableCard.swift │ │ ├── 04TheNonMutatingCard.xcplaygroundpage │ │ │ ├── Contents.swift │ │ │ └── Sources │ │ │ │ └── ImmutableCard.swift │ │ ├── 05ChangingACard.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 06DestroyAndRestoreACard.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 07TheDeck.xcplaygroundpage │ │ │ └── Contents.swift │ │ └── 08PerformingTheTrick.xcplaygroundpage │ │ │ └── Contents.swift │ ├── Sources │ │ ├── BurnedCard.swift │ │ ├── Card.swift │ │ ├── CardCarrying.swift │ │ ├── Covered.swift │ │ ├── Deck.swift │ │ ├── DontLookInHere.swift │ │ ├── Rank.swift │ │ ├── RippedCard.swift │ │ └── Suit.swift │ └── contents.xcplayground └── MagicFinal.playground │ ├── Pages │ ├── 01TheTrick.xcplaygroundpage │ │ ├── Contents.swift │ │ └── Sources │ │ │ ├── MagicCard.swift │ │ │ ├── MagicDeck.swift │ │ │ └── Modifications.swift │ ├── 02ACard.xcplaygroundpage │ │ └── Contents.swift │ ├── 03TheMutatingCard.xcplaygroundpage │ │ ├── Contents.swift │ │ └── Sources │ │ │ └── MutableCard.swift │ ├── 04TheNonMutatingCard.xcplaygroundpage │ │ ├── Contents.swift │ │ └── Sources │ │ │ └── ImmutableCard.swift │ ├── 05ChangingACard.xcplaygroundpage │ │ └── Contents.swift │ ├── 06DestroyAndRestoreACard.xcplaygroundpage │ │ └── Contents.swift │ ├── 07TheDeck.xcplaygroundpage │ │ └── Contents.swift │ └── 08PerformingTheTrick.xcplaygroundpage │ │ └── Contents.swift │ ├── Sources │ ├── BurnedCard.swift │ ├── Card.swift │ ├── CardCarrying.swift │ ├── Covered.swift │ ├── Deck.swift │ ├── DontLookInHere.swift │ ├── Rank.swift │ ├── RippedCard.swift │ └── Suit.swift │ └── contents.xcplayground ├── 02 ├── FunctionsArentSpecial.playground │ ├── Pages │ │ ├── 01PureFunctions.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 02TrickDeck.xcplaygroundpage │ │ │ ├── Contents.swift │ │ │ └── Sources │ │ │ │ └── UpMySleeve.swift │ │ ├── 03ASimpleLabel.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 04ASimpleButton.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 05MutatingState.xcplaygroundpage │ │ │ ├── Contents.swift │ │ │ └── Sources │ │ │ │ ├── SimpleButton.swift │ │ │ │ └── SimpleLabel.swift │ │ ├── 06DisplayingCards.xcplaygroundpage │ │ │ ├── Contents.swift │ │ │ └── Sources │ │ │ │ ├── SimpleButton.swift │ │ │ │ └── SimpleLabel.swift │ │ ├── 07MutableMiddle.xcplaygroundpage │ │ │ ├── Contents.swift │ │ │ └── Sources │ │ │ │ ├── SimpleButton.swift │ │ │ │ └── SimpleLabel.swift │ │ └── 08OneForFun.xcplaygroundpage │ │ │ ├── Contents.swift │ │ │ └── Sources │ │ │ ├── Arrow.swift │ │ │ ├── Brains.swift │ │ │ ├── Buttons.swift │ │ │ ├── Constants.swift │ │ │ ├── Drawing.swift │ │ │ └── MoveButton.swift │ ├── Sources │ │ ├── Card.swift │ │ ├── Deck.swift │ │ ├── DeckView.swift │ │ ├── Rank.swift │ │ └── Suit.swift │ └── contents.xcplayground └── FunctionsArentSpecialFinal.playground │ ├── Pages │ ├── 01PureFunctions.xcplaygroundpage │ │ └── Contents.swift │ ├── 02TrickDeck.xcplaygroundpage │ │ ├── Contents.swift │ │ └── Sources │ │ │ └── UpMySleeve.swift │ ├── 03ASimpleLabel.xcplaygroundpage │ │ └── Contents.swift │ ├── 04ASimpleButton.xcplaygroundpage │ │ └── Contents.swift │ ├── 05MutatingState.xcplaygroundpage │ │ ├── Contents.swift │ │ └── Sources │ │ │ ├── SimpleButton.swift │ │ │ └── SimpleLabel.swift │ ├── 06DisplayingCards.xcplaygroundpage │ │ ├── Contents.swift │ │ └── Sources │ │ │ ├── SimpleButton.swift │ │ │ └── SimpleLabel.swift │ ├── 07MutableMiddle.xcplaygroundpage │ │ ├── Contents.swift │ │ └── Sources │ │ │ ├── SimpleButton.swift │ │ │ └── SimpleLabel.swift │ └── 08OneForFun.xcplaygroundpage │ │ ├── Contents.swift │ │ └── Sources │ │ ├── Arrow.swift │ │ ├── Brains.swift │ │ ├── Buttons.swift │ │ ├── Constants.swift │ │ ├── Drawing.swift │ │ └── MoveButton.swift │ ├── Sources │ ├── Card.swift │ ├── Deck.swift │ ├── DeckView.swift │ ├── Rank.swift │ └── Suit.swift │ └── contents.xcplayground ├── 03 ├── HigherOrderFunctions.playground │ ├── Contents.swift │ ├── Pages │ │ ├── 01Lines.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 02MakingFunctions.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 03Closures.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 04MakingClosures.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 05ConsumingClosures.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 06Generics.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 07CallAsFunction.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 08CustomOperators.xcplaygroundpage │ │ │ └── Contents.swift │ │ └── 09FlexibleTrick.xcplaygroundpage │ │ │ └── Contents.swift │ ├── Sources │ │ ├── Card.swift │ │ ├── Deck.swift │ │ ├── DeckView.swift │ │ ├── Rank.swift │ │ └── Suit.swift │ └── contents.xcplayground └── HigherOrderFunctionsFinal.playground │ ├── Pages │ ├── 01Lines.xcplaygroundpage │ │ └── Contents.swift │ ├── 02MakingFunctions.xcplaygroundpage │ │ └── Contents.swift │ ├── 03Closures.xcplaygroundpage │ │ └── Contents.swift │ ├── 04MakingClosures.xcplaygroundpage │ │ └── Contents.swift │ ├── 05ConsumingClosures.xcplaygroundpage │ │ └── Contents.swift │ ├── 06Generics.xcplaygroundpage │ │ └── Contents.swift │ ├── 07CallAsFunction.xcplaygroundpage │ │ └── Contents.swift │ ├── 08CustomOperators.xcplaygroundpage │ │ └── Contents.swift │ └── 09FlexibleTrick.xcplaygroundpage │ │ └── Contents.swift │ ├── Sources │ ├── Card.swift │ ├── Deck.swift │ ├── DeckView.swift │ ├── Rank.swift │ └── Suit.swift │ └── contents.xcplayground ├── 04 ├── Arrays.playground │ ├── Contents.swift │ ├── Pages │ │ ├── 01Filter.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 02Sorted.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 03Map.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 04CompactMap.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 05FlatMap.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 06Reduce.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 07Zip.xcplaygroundpage │ │ │ └── Contents.swift │ │ └── 08PlayingWithAFullDeck.xcplaygroundpage │ │ │ └── Contents.swift │ ├── Sources │ │ ├── Card.swift │ │ ├── Deck.swift │ │ ├── Rank.swift │ │ ├── Suit.swift │ │ └── Views │ │ │ ├── CardView.swift │ │ │ ├── DeckView.swift │ │ │ ├── FilterView.swift │ │ │ ├── HandView.swift │ │ │ └── ViewConstants.swift │ └── contents.xcplayground └── ArraysFinal.playground │ ├── Pages │ ├── 01Filter.xcplaygroundpage │ │ └── Contents.swift │ ├── 02Sorted.xcplaygroundpage │ │ └── Contents.swift │ ├── 03Map.xcplaygroundpage │ │ └── Contents.swift │ ├── 04CompactMap.xcplaygroundpage │ │ └── Contents.swift │ ├── 05FlatMap.xcplaygroundpage │ │ └── Contents.swift │ ├── 06Reduce.xcplaygroundpage │ │ └── Contents.swift │ ├── 07Zip.xcplaygroundpage │ │ └── Contents.swift │ └── 08PlayingWithAFullDeck.xcplaygroundpage │ │ └── Contents.swift │ ├── Sources │ ├── Card.swift │ ├── Deck.swift │ ├── Rank.swift │ ├── Suit.swift │ └── Views │ │ ├── CardView.swift │ │ ├── DeckView.swift │ │ ├── FilterView.swift │ │ ├── HandView.swift │ │ └── ViewConstants.swift │ └── contents.xcplayground ├── 05 ├── Map.playground │ ├── Contents.swift │ ├── Pages │ │ ├── 01TheMagicOfMap.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 02OneAtATime.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 03ZeroOrOne.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 04Optionals.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 05Result.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 06Writer.xcplaygroundpage │ │ │ └── Contents.swift │ │ └── 07TheMapPattern.xcplaygroundpage │ │ │ └── Contents.swift │ ├── Sources │ │ ├── BagOfTricks.swift │ │ ├── Card.swift │ │ ├── CustomOperators.swift │ │ ├── Deck.swift │ │ ├── Rank.swift │ │ └── Suit.swift │ └── contents.xcplayground └── MapFinal.playground │ ├── Pages │ ├── 01TheMagicOfMap.xcplaygroundpage │ │ └── Contents.swift │ ├── 02OneAtATime.xcplaygroundpage │ │ └── Contents.swift │ ├── 03ZeroOrOne.xcplaygroundpage │ │ └── Contents.swift │ ├── 04Optionals.xcplaygroundpage │ │ └── Contents.swift │ ├── 05Result.xcplaygroundpage │ │ └── Contents.swift │ ├── 06Writer.xcplaygroundpage │ │ └── Contents.swift │ ├── 07TheMapPattern.xcplaygroundpage │ │ └── Contents.swift │ ├── 08Function.xcplaygroundpage │ │ ├── Contents.swift │ │ └── Resources │ │ │ ├── Cover.png │ │ │ └── Title.txt │ └── 09State.xcplaygroundpage │ │ └── Contents.swift │ ├── Sources │ ├── BagOfTricks.swift │ ├── Card.swift │ ├── CustomOperators.swift │ ├── Deck.swift │ ├── Rank.swift │ └── Suit.swift │ └── contents.xcplayground ├── 06 ├── FlatMap.playground │ ├── Pages │ │ ├── 01TheMagicOfFlatMap.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 02Writer.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 03ShinyTrunk.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 04Result.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 05Optionals.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 06TheShape.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 07Just.xcplaygroundpage │ │ │ └── Contents.swift │ │ └── 08Monoids.xcplaygroundpage │ │ │ └── Contents.swift │ ├── Sources │ │ ├── Cards │ │ │ ├── Card.swift │ │ │ ├── Deck.swift │ │ │ ├── Rank.swift │ │ │ └── Suit.swift │ │ ├── CustomOperators.swift │ │ ├── Functors │ │ │ ├── Reader.swift │ │ │ ├── ShinyTrunk.swift │ │ │ ├── State.swift │ │ │ ├── Writer.swift │ │ │ └── WriterM.swift │ │ ├── Point.swift │ │ └── Views │ │ │ ├── CardView.swift │ │ │ ├── DeckView.swift │ │ │ ├── FlexibleHandView.swift │ │ │ ├── HandOfHandsView.swift │ │ │ ├── HandView.swift │ │ │ └── ViewConstants.swift │ └── contents.xcplayground └── FlatMapFinal.playground │ ├── Pages │ ├── 01TheMagicOfFlatMap.xcplaygroundpage │ │ └── Contents.swift │ ├── 02Writer.xcplaygroundpage │ │ └── Contents.swift │ ├── 03ShinyTrunk.xcplaygroundpage │ │ └── Contents.swift │ ├── 04Result.xcplaygroundpage │ │ └── Contents.swift │ ├── 05Optionals.xcplaygroundpage │ │ └── Contents.swift │ ├── 06TheShape.xcplaygroundpage │ │ └── Contents.swift │ ├── 07Just.xcplaygroundpage │ │ └── Contents.swift │ └── 08Monoids.xcplaygroundpage │ │ └── Contents.swift │ ├── Sources │ ├── Cards │ │ ├── Card.swift │ │ ├── Deck.swift │ │ ├── Rank.swift │ │ └── Suit.swift │ ├── CustomOperators.swift │ ├── Functors │ │ ├── Monoid.swift │ │ ├── Reader.swift │ │ ├── ShinyTrunk.swift │ │ ├── State.swift │ │ ├── Writer.swift │ │ └── WriterM.swift │ ├── Point.swift │ └── Views │ │ ├── CardView.swift │ │ ├── DeckView.swift │ │ ├── FlexibleHandView.swift │ │ ├── HandOfHandsView.swift │ │ ├── HandView.swift │ │ └── ViewConstants.swift │ └── contents.xcplayground ├── 07 ├── Apply.playground │ ├── Contents.swift │ ├── Pages │ │ ├── 01TheMagicOfApply.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 02Arrays.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 03Interchange.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 04Currying.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 05Optionals.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 06BetweenFunctorAndMonad.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 07Result.xcplaygroundpage │ │ │ └── Contents.swift │ │ └── 08Validated.xcplaygroundpage │ │ │ └── Contents.swift │ ├── Sources │ │ ├── BagOfTricks.swift │ │ ├── CustomOperators.swift │ │ ├── Monads │ │ │ ├── ArrayAdditions.swift │ │ │ ├── OptionalAdditions.swift │ │ │ ├── ResultAdditions.swift │ │ │ └── ShinyTrunk.swift │ │ ├── Monoid.swift │ │ ├── Point.swift │ │ ├── SimpleButton.swift │ │ └── Validated.swift │ └── contents.xcplayground └── ApplyFinal.playground │ ├── Contents.swift │ ├── Pages │ ├── 01TheMagicOfApply.xcplaygroundpage │ │ └── Contents.swift │ ├── 02Arrays.xcplaygroundpage │ │ └── Contents.swift │ ├── 03Interchange.xcplaygroundpage │ │ └── Contents.swift │ ├── 04Currying.xcplaygroundpage │ │ └── Contents.swift │ ├── 05Optionals.xcplaygroundpage │ │ └── Contents.swift │ ├── 06BetweenFunctorAndMonad.xcplaygroundpage │ │ └── Contents.swift │ ├── 07Result.xcplaygroundpage │ │ └── Contents.swift │ └── 08Validated.xcplaygroundpage │ │ └── Contents.swift │ ├── Sources │ ├── BagOfTricks.swift │ ├── CustomOperators.swift │ ├── Monads │ │ ├── ArrayAdditions.swift │ │ ├── OptionalAdditions.swift │ │ ├── ResultAdditions.swift │ │ └── ShinyTrunk.swift │ ├── Monoid.swift │ ├── Point.swift │ ├── SimpleButton.swift │ └── Validated.swift │ └── contents.xcplayground ├── 08 ├── DeeperMagic.playground │ ├── Contents.swift │ ├── Pages │ │ ├── 01StringFunction.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 02Reader.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 03TheReaderMonad.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 04Parsers.xcplaygroundpage │ │ │ └── Contents.swift │ │ ├── 05State.xcplaygroundpage │ │ │ └── Contents.swift │ │ └── 06TheStateMonad.xcplaygroundpage │ │ │ └── Contents.swift │ ├── Sources │ │ ├── Cards │ │ │ ├── Card.swift │ │ │ ├── Deck.swift │ │ │ ├── Rank.swift │ │ │ └── Suit.swift │ │ └── Point.swift │ └── contents.xcplayground └── DeeperMagicFinal.playground │ ├── Contents.swift │ ├── Pages │ ├── 01StringFunction.xcplaygroundpage │ │ └── Contents.swift │ ├── 02Reader.xcplaygroundpage │ │ └── Contents.swift │ ├── 03TheReaderMonad.xcplaygroundpage │ │ └── Contents.swift │ ├── 04Parsers.xcplaygroundpage │ │ └── Contents.swift │ ├── 05State.xcplaygroundpage │ │ └── Contents.swift │ └── 06TheStateMonad.xcplaygroundpage │ │ └── Contents.swift │ ├── Sources │ ├── Cards │ │ ├── Card.swift │ │ ├── Deck.swift │ │ ├── Rank.swift │ │ └── Suit.swift │ └── Point.swift │ └── contents.xcplayground └── README.md /.github/ISSUE_TEMPLATE/errata-or-suggestion.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/.github/ISSUE_TEMPLATE/errata-or-suggestion.md -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/fp-issue.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/.github/ISSUE_TEMPLATE/fp-issue.md -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/.gitignore -------------------------------------------------------------------------------- /01/Magic.playground/Pages/01TheTrick.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/Magic.playground/Pages/01TheTrick.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /01/Magic.playground/Pages/01TheTrick.xcplaygroundpage/Sources/MagicCard.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/Magic.playground/Pages/01TheTrick.xcplaygroundpage/Sources/MagicCard.swift -------------------------------------------------------------------------------- /01/Magic.playground/Pages/01TheTrick.xcplaygroundpage/Sources/MagicDeck.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/Magic.playground/Pages/01TheTrick.xcplaygroundpage/Sources/MagicDeck.swift -------------------------------------------------------------------------------- /01/Magic.playground/Pages/01TheTrick.xcplaygroundpage/Sources/Modifications.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/Magic.playground/Pages/01TheTrick.xcplaygroundpage/Sources/Modifications.swift -------------------------------------------------------------------------------- /01/Magic.playground/Pages/02ACard.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/Magic.playground/Pages/02ACard.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /01/Magic.playground/Pages/03TheMutatingCard.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/Magic.playground/Pages/03TheMutatingCard.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /01/Magic.playground/Pages/03TheMutatingCard.xcplaygroundpage/Sources/MutableCard.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/Magic.playground/Pages/03TheMutatingCard.xcplaygroundpage/Sources/MutableCard.swift -------------------------------------------------------------------------------- /01/Magic.playground/Pages/04TheNonMutatingCard.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/Magic.playground/Pages/04TheNonMutatingCard.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /01/Magic.playground/Pages/04TheNonMutatingCard.xcplaygroundpage/Sources/ImmutableCard.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/Magic.playground/Pages/04TheNonMutatingCard.xcplaygroundpage/Sources/ImmutableCard.swift -------------------------------------------------------------------------------- /01/Magic.playground/Pages/05ChangingACard.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/Magic.playground/Pages/05ChangingACard.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /01/Magic.playground/Pages/06DestroyAndRestoreACard.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/Magic.playground/Pages/06DestroyAndRestoreACard.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /01/Magic.playground/Pages/07TheDeck.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/Magic.playground/Pages/07TheDeck.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /01/Magic.playground/Pages/08PerformingTheTrick.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/Magic.playground/Pages/08PerformingTheTrick.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /01/Magic.playground/Sources/BurnedCard.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/Magic.playground/Sources/BurnedCard.swift -------------------------------------------------------------------------------- /01/Magic.playground/Sources/Card.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/Magic.playground/Sources/Card.swift -------------------------------------------------------------------------------- /01/Magic.playground/Sources/CardCarrying.swift: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /01/Magic.playground/Sources/Covered.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/Magic.playground/Sources/Covered.swift -------------------------------------------------------------------------------- /01/Magic.playground/Sources/Deck.swift: -------------------------------------------------------------------------------- 1 | import Foundation 2 | 3 | -------------------------------------------------------------------------------- /01/Magic.playground/Sources/DontLookInHere.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/Magic.playground/Sources/DontLookInHere.swift -------------------------------------------------------------------------------- /01/Magic.playground/Sources/Rank.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/Magic.playground/Sources/Rank.swift -------------------------------------------------------------------------------- /01/Magic.playground/Sources/RippedCard.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/Magic.playground/Sources/RippedCard.swift -------------------------------------------------------------------------------- /01/Magic.playground/Sources/Suit.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/Magic.playground/Sources/Suit.swift -------------------------------------------------------------------------------- /01/Magic.playground/contents.xcplayground: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/Magic.playground/contents.xcplayground -------------------------------------------------------------------------------- /01/MagicFinal.playground/Pages/01TheTrick.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/MagicFinal.playground/Pages/01TheTrick.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /01/MagicFinal.playground/Pages/01TheTrick.xcplaygroundpage/Sources/MagicCard.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/MagicFinal.playground/Pages/01TheTrick.xcplaygroundpage/Sources/MagicCard.swift -------------------------------------------------------------------------------- /01/MagicFinal.playground/Pages/01TheTrick.xcplaygroundpage/Sources/MagicDeck.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/MagicFinal.playground/Pages/01TheTrick.xcplaygroundpage/Sources/MagicDeck.swift -------------------------------------------------------------------------------- /01/MagicFinal.playground/Pages/01TheTrick.xcplaygroundpage/Sources/Modifications.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/MagicFinal.playground/Pages/01TheTrick.xcplaygroundpage/Sources/Modifications.swift -------------------------------------------------------------------------------- /01/MagicFinal.playground/Pages/02ACard.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/MagicFinal.playground/Pages/02ACard.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /01/MagicFinal.playground/Pages/03TheMutatingCard.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/MagicFinal.playground/Pages/03TheMutatingCard.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /01/MagicFinal.playground/Pages/03TheMutatingCard.xcplaygroundpage/Sources/MutableCard.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/MagicFinal.playground/Pages/03TheMutatingCard.xcplaygroundpage/Sources/MutableCard.swift -------------------------------------------------------------------------------- /01/MagicFinal.playground/Pages/04TheNonMutatingCard.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/MagicFinal.playground/Pages/04TheNonMutatingCard.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /01/MagicFinal.playground/Pages/04TheNonMutatingCard.xcplaygroundpage/Sources/ImmutableCard.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/MagicFinal.playground/Pages/04TheNonMutatingCard.xcplaygroundpage/Sources/ImmutableCard.swift -------------------------------------------------------------------------------- /01/MagicFinal.playground/Pages/05ChangingACard.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/MagicFinal.playground/Pages/05ChangingACard.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /01/MagicFinal.playground/Pages/06DestroyAndRestoreACard.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/MagicFinal.playground/Pages/06DestroyAndRestoreACard.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /01/MagicFinal.playground/Pages/07TheDeck.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/MagicFinal.playground/Pages/07TheDeck.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /01/MagicFinal.playground/Pages/08PerformingTheTrick.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/MagicFinal.playground/Pages/08PerformingTheTrick.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /01/MagicFinal.playground/Sources/BurnedCard.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/MagicFinal.playground/Sources/BurnedCard.swift -------------------------------------------------------------------------------- /01/MagicFinal.playground/Sources/Card.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/MagicFinal.playground/Sources/Card.swift -------------------------------------------------------------------------------- /01/MagicFinal.playground/Sources/CardCarrying.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/MagicFinal.playground/Sources/CardCarrying.swift -------------------------------------------------------------------------------- /01/MagicFinal.playground/Sources/Covered.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/MagicFinal.playground/Sources/Covered.swift -------------------------------------------------------------------------------- /01/MagicFinal.playground/Sources/Deck.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/MagicFinal.playground/Sources/Deck.swift -------------------------------------------------------------------------------- /01/MagicFinal.playground/Sources/DontLookInHere.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/MagicFinal.playground/Sources/DontLookInHere.swift -------------------------------------------------------------------------------- /01/MagicFinal.playground/Sources/Rank.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/MagicFinal.playground/Sources/Rank.swift -------------------------------------------------------------------------------- /01/MagicFinal.playground/Sources/RippedCard.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/MagicFinal.playground/Sources/RippedCard.swift -------------------------------------------------------------------------------- /01/MagicFinal.playground/Sources/Suit.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/MagicFinal.playground/Sources/Suit.swift -------------------------------------------------------------------------------- /01/MagicFinal.playground/contents.xcplayground: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/01/MagicFinal.playground/contents.xcplayground -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Pages/01PureFunctions.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Pages/01PureFunctions.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Pages/02TrickDeck.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Pages/02TrickDeck.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Pages/02TrickDeck.xcplaygroundpage/Sources/UpMySleeve.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Pages/02TrickDeck.xcplaygroundpage/Sources/UpMySleeve.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Pages/03ASimpleLabel.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Pages/03ASimpleLabel.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Pages/04ASimpleButton.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Pages/04ASimpleButton.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Pages/05MutatingState.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Pages/05MutatingState.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Pages/05MutatingState.xcplaygroundpage/Sources/SimpleButton.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Pages/05MutatingState.xcplaygroundpage/Sources/SimpleButton.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Pages/05MutatingState.xcplaygroundpage/Sources/SimpleLabel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Pages/05MutatingState.xcplaygroundpage/Sources/SimpleLabel.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Pages/06DisplayingCards.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Pages/06DisplayingCards.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Pages/06DisplayingCards.xcplaygroundpage/Sources/SimpleButton.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Pages/06DisplayingCards.xcplaygroundpage/Sources/SimpleButton.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Pages/06DisplayingCards.xcplaygroundpage/Sources/SimpleLabel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Pages/06DisplayingCards.xcplaygroundpage/Sources/SimpleLabel.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Pages/07MutableMiddle.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Pages/07MutableMiddle.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Pages/07MutableMiddle.xcplaygroundpage/Sources/SimpleButton.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Pages/07MutableMiddle.xcplaygroundpage/Sources/SimpleButton.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Pages/07MutableMiddle.xcplaygroundpage/Sources/SimpleLabel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Pages/07MutableMiddle.xcplaygroundpage/Sources/SimpleLabel.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Pages/08OneForFun.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Pages/08OneForFun.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Pages/08OneForFun.xcplaygroundpage/Sources/Arrow.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Pages/08OneForFun.xcplaygroundpage/Sources/Arrow.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Pages/08OneForFun.xcplaygroundpage/Sources/Brains.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Pages/08OneForFun.xcplaygroundpage/Sources/Brains.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Pages/08OneForFun.xcplaygroundpage/Sources/Buttons.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Pages/08OneForFun.xcplaygroundpage/Sources/Buttons.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Pages/08OneForFun.xcplaygroundpage/Sources/Constants.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Pages/08OneForFun.xcplaygroundpage/Sources/Constants.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Pages/08OneForFun.xcplaygroundpage/Sources/Drawing.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Pages/08OneForFun.xcplaygroundpage/Sources/Drawing.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Pages/08OneForFun.xcplaygroundpage/Sources/MoveButton.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Pages/08OneForFun.xcplaygroundpage/Sources/MoveButton.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Sources/Card.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Sources/Card.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Sources/Deck.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Sources/Deck.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Sources/DeckView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Sources/DeckView.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Sources/Rank.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Sources/Rank.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/Sources/Suit.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/Sources/Suit.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecial.playground/contents.xcplayground: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecial.playground/contents.xcplayground -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Pages/01PureFunctions.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Pages/01PureFunctions.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Pages/02TrickDeck.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Pages/02TrickDeck.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Pages/02TrickDeck.xcplaygroundpage/Sources/UpMySleeve.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Pages/02TrickDeck.xcplaygroundpage/Sources/UpMySleeve.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Pages/03ASimpleLabel.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Pages/03ASimpleLabel.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Pages/04ASimpleButton.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Pages/04ASimpleButton.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Pages/05MutatingState.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Pages/05MutatingState.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Pages/05MutatingState.xcplaygroundpage/Sources/SimpleButton.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Pages/05MutatingState.xcplaygroundpage/Sources/SimpleButton.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Pages/05MutatingState.xcplaygroundpage/Sources/SimpleLabel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Pages/05MutatingState.xcplaygroundpage/Sources/SimpleLabel.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Pages/06DisplayingCards.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Pages/06DisplayingCards.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Pages/06DisplayingCards.xcplaygroundpage/Sources/SimpleButton.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Pages/06DisplayingCards.xcplaygroundpage/Sources/SimpleButton.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Pages/06DisplayingCards.xcplaygroundpage/Sources/SimpleLabel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Pages/06DisplayingCards.xcplaygroundpage/Sources/SimpleLabel.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Pages/07MutableMiddle.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Pages/07MutableMiddle.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Pages/07MutableMiddle.xcplaygroundpage/Sources/SimpleButton.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Pages/07MutableMiddle.xcplaygroundpage/Sources/SimpleButton.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Pages/07MutableMiddle.xcplaygroundpage/Sources/SimpleLabel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Pages/07MutableMiddle.xcplaygroundpage/Sources/SimpleLabel.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Pages/08OneForFun.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Pages/08OneForFun.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Pages/08OneForFun.xcplaygroundpage/Sources/Arrow.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Pages/08OneForFun.xcplaygroundpage/Sources/Arrow.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Pages/08OneForFun.xcplaygroundpage/Sources/Brains.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Pages/08OneForFun.xcplaygroundpage/Sources/Brains.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Pages/08OneForFun.xcplaygroundpage/Sources/Buttons.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Pages/08OneForFun.xcplaygroundpage/Sources/Buttons.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Pages/08OneForFun.xcplaygroundpage/Sources/Constants.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Pages/08OneForFun.xcplaygroundpage/Sources/Constants.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Pages/08OneForFun.xcplaygroundpage/Sources/Drawing.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Pages/08OneForFun.xcplaygroundpage/Sources/Drawing.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Pages/08OneForFun.xcplaygroundpage/Sources/MoveButton.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Pages/08OneForFun.xcplaygroundpage/Sources/MoveButton.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Sources/Card.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Sources/Card.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Sources/Deck.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Sources/Deck.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Sources/DeckView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Sources/DeckView.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Sources/Rank.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Sources/Rank.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/Sources/Suit.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/Sources/Suit.swift -------------------------------------------------------------------------------- /02/FunctionsArentSpecialFinal.playground/contents.xcplayground: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/02/FunctionsArentSpecialFinal.playground/contents.xcplayground -------------------------------------------------------------------------------- /03/HigherOrderFunctions.playground/Contents.swift: -------------------------------------------------------------------------------- 1 | import Cocoa 2 | 3 | var str = "Hello, playground" 4 | -------------------------------------------------------------------------------- /03/HigherOrderFunctions.playground/Pages/01Lines.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctions.playground/Pages/01Lines.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctions.playground/Pages/02MakingFunctions.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctions.playground/Pages/02MakingFunctions.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctions.playground/Pages/03Closures.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctions.playground/Pages/03Closures.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctions.playground/Pages/04MakingClosures.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctions.playground/Pages/04MakingClosures.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctions.playground/Pages/05ConsumingClosures.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctions.playground/Pages/05ConsumingClosures.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctions.playground/Pages/06Generics.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctions.playground/Pages/06Generics.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctions.playground/Pages/07CallAsFunction.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctions.playground/Pages/07CallAsFunction.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctions.playground/Pages/08CustomOperators.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctions.playground/Pages/08CustomOperators.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctions.playground/Pages/09FlexibleTrick.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctions.playground/Pages/09FlexibleTrick.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctions.playground/Sources/Card.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctions.playground/Sources/Card.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctions.playground/Sources/Deck.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctions.playground/Sources/Deck.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctions.playground/Sources/DeckView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctions.playground/Sources/DeckView.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctions.playground/Sources/Rank.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctions.playground/Sources/Rank.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctions.playground/Sources/Suit.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctions.playground/Sources/Suit.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctions.playground/contents.xcplayground: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctions.playground/contents.xcplayground -------------------------------------------------------------------------------- /03/HigherOrderFunctionsFinal.playground/Pages/01Lines.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctionsFinal.playground/Pages/01Lines.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctionsFinal.playground/Pages/02MakingFunctions.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctionsFinal.playground/Pages/02MakingFunctions.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctionsFinal.playground/Pages/03Closures.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctionsFinal.playground/Pages/03Closures.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctionsFinal.playground/Pages/04MakingClosures.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctionsFinal.playground/Pages/04MakingClosures.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctionsFinal.playground/Pages/05ConsumingClosures.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctionsFinal.playground/Pages/05ConsumingClosures.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctionsFinal.playground/Pages/06Generics.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctionsFinal.playground/Pages/06Generics.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctionsFinal.playground/Pages/07CallAsFunction.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctionsFinal.playground/Pages/07CallAsFunction.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctionsFinal.playground/Pages/08CustomOperators.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctionsFinal.playground/Pages/08CustomOperators.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctionsFinal.playground/Pages/09FlexibleTrick.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctionsFinal.playground/Pages/09FlexibleTrick.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctionsFinal.playground/Sources/Card.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctionsFinal.playground/Sources/Card.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctionsFinal.playground/Sources/Deck.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctionsFinal.playground/Sources/Deck.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctionsFinal.playground/Sources/DeckView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctionsFinal.playground/Sources/DeckView.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctionsFinal.playground/Sources/Rank.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctionsFinal.playground/Sources/Rank.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctionsFinal.playground/Sources/Suit.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctionsFinal.playground/Sources/Suit.swift -------------------------------------------------------------------------------- /03/HigherOrderFunctionsFinal.playground/contents.xcplayground: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/03/HigherOrderFunctionsFinal.playground/contents.xcplayground -------------------------------------------------------------------------------- /04/Arrays.playground/Contents.swift: -------------------------------------------------------------------------------- 1 | import UIKit 2 | 3 | var str = "Hello, playground" 4 | -------------------------------------------------------------------------------- /04/Arrays.playground/Pages/01Filter.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/Arrays.playground/Pages/01Filter.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /04/Arrays.playground/Pages/02Sorted.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/Arrays.playground/Pages/02Sorted.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /04/Arrays.playground/Pages/03Map.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/Arrays.playground/Pages/03Map.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /04/Arrays.playground/Pages/04CompactMap.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/Arrays.playground/Pages/04CompactMap.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /04/Arrays.playground/Pages/05FlatMap.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/Arrays.playground/Pages/05FlatMap.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /04/Arrays.playground/Pages/06Reduce.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/Arrays.playground/Pages/06Reduce.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /04/Arrays.playground/Pages/07Zip.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/Arrays.playground/Pages/07Zip.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /04/Arrays.playground/Pages/08PlayingWithAFullDeck.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/Arrays.playground/Pages/08PlayingWithAFullDeck.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /04/Arrays.playground/Sources/Card.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/Arrays.playground/Sources/Card.swift -------------------------------------------------------------------------------- /04/Arrays.playground/Sources/Deck.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/Arrays.playground/Sources/Deck.swift -------------------------------------------------------------------------------- /04/Arrays.playground/Sources/Rank.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/Arrays.playground/Sources/Rank.swift -------------------------------------------------------------------------------- /04/Arrays.playground/Sources/Suit.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/Arrays.playground/Sources/Suit.swift -------------------------------------------------------------------------------- /04/Arrays.playground/Sources/Views/CardView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/Arrays.playground/Sources/Views/CardView.swift -------------------------------------------------------------------------------- /04/Arrays.playground/Sources/Views/DeckView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/Arrays.playground/Sources/Views/DeckView.swift -------------------------------------------------------------------------------- /04/Arrays.playground/Sources/Views/FilterView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/Arrays.playground/Sources/Views/FilterView.swift -------------------------------------------------------------------------------- /04/Arrays.playground/Sources/Views/HandView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/Arrays.playground/Sources/Views/HandView.swift -------------------------------------------------------------------------------- /04/Arrays.playground/Sources/Views/ViewConstants.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/Arrays.playground/Sources/Views/ViewConstants.swift -------------------------------------------------------------------------------- /04/Arrays.playground/contents.xcplayground: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/Arrays.playground/contents.xcplayground -------------------------------------------------------------------------------- /04/ArraysFinal.playground/Pages/01Filter.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/ArraysFinal.playground/Pages/01Filter.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /04/ArraysFinal.playground/Pages/02Sorted.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/ArraysFinal.playground/Pages/02Sorted.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /04/ArraysFinal.playground/Pages/03Map.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/ArraysFinal.playground/Pages/03Map.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /04/ArraysFinal.playground/Pages/04CompactMap.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/ArraysFinal.playground/Pages/04CompactMap.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /04/ArraysFinal.playground/Pages/05FlatMap.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/ArraysFinal.playground/Pages/05FlatMap.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /04/ArraysFinal.playground/Pages/06Reduce.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/ArraysFinal.playground/Pages/06Reduce.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /04/ArraysFinal.playground/Pages/07Zip.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/ArraysFinal.playground/Pages/07Zip.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /04/ArraysFinal.playground/Pages/08PlayingWithAFullDeck.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/ArraysFinal.playground/Pages/08PlayingWithAFullDeck.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /04/ArraysFinal.playground/Sources/Card.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/ArraysFinal.playground/Sources/Card.swift -------------------------------------------------------------------------------- /04/ArraysFinal.playground/Sources/Deck.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/ArraysFinal.playground/Sources/Deck.swift -------------------------------------------------------------------------------- /04/ArraysFinal.playground/Sources/Rank.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/ArraysFinal.playground/Sources/Rank.swift -------------------------------------------------------------------------------- /04/ArraysFinal.playground/Sources/Suit.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/ArraysFinal.playground/Sources/Suit.swift -------------------------------------------------------------------------------- /04/ArraysFinal.playground/Sources/Views/CardView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/ArraysFinal.playground/Sources/Views/CardView.swift -------------------------------------------------------------------------------- /04/ArraysFinal.playground/Sources/Views/DeckView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/ArraysFinal.playground/Sources/Views/DeckView.swift -------------------------------------------------------------------------------- /04/ArraysFinal.playground/Sources/Views/FilterView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/ArraysFinal.playground/Sources/Views/FilterView.swift -------------------------------------------------------------------------------- /04/ArraysFinal.playground/Sources/Views/HandView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/ArraysFinal.playground/Sources/Views/HandView.swift -------------------------------------------------------------------------------- /04/ArraysFinal.playground/Sources/Views/ViewConstants.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/ArraysFinal.playground/Sources/Views/ViewConstants.swift -------------------------------------------------------------------------------- /04/ArraysFinal.playground/contents.xcplayground: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/04/ArraysFinal.playground/contents.xcplayground -------------------------------------------------------------------------------- /05/Map.playground/Contents.swift: -------------------------------------------------------------------------------- 1 | import UIKit 2 | 3 | var str = "Hello, playground" 4 | -------------------------------------------------------------------------------- /05/Map.playground/Pages/01TheMagicOfMap.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/Map.playground/Pages/01TheMagicOfMap.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /05/Map.playground/Pages/02OneAtATime.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/Map.playground/Pages/02OneAtATime.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /05/Map.playground/Pages/03ZeroOrOne.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/Map.playground/Pages/03ZeroOrOne.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /05/Map.playground/Pages/04Optionals.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/Map.playground/Pages/04Optionals.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /05/Map.playground/Pages/05Result.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/Map.playground/Pages/05Result.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /05/Map.playground/Pages/06Writer.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/Map.playground/Pages/06Writer.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /05/Map.playground/Pages/07TheMapPattern.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/Map.playground/Pages/07TheMapPattern.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /05/Map.playground/Sources/BagOfTricks.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/Map.playground/Sources/BagOfTricks.swift -------------------------------------------------------------------------------- /05/Map.playground/Sources/Card.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/Map.playground/Sources/Card.swift -------------------------------------------------------------------------------- /05/Map.playground/Sources/CustomOperators.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/Map.playground/Sources/CustomOperators.swift -------------------------------------------------------------------------------- /05/Map.playground/Sources/Deck.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/Map.playground/Sources/Deck.swift -------------------------------------------------------------------------------- /05/Map.playground/Sources/Rank.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/Map.playground/Sources/Rank.swift -------------------------------------------------------------------------------- /05/Map.playground/Sources/Suit.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/Map.playground/Sources/Suit.swift -------------------------------------------------------------------------------- /05/Map.playground/contents.xcplayground: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/Map.playground/contents.xcplayground -------------------------------------------------------------------------------- /05/MapFinal.playground/Pages/01TheMagicOfMap.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/MapFinal.playground/Pages/01TheMagicOfMap.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /05/MapFinal.playground/Pages/02OneAtATime.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/MapFinal.playground/Pages/02OneAtATime.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /05/MapFinal.playground/Pages/03ZeroOrOne.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/MapFinal.playground/Pages/03ZeroOrOne.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /05/MapFinal.playground/Pages/04Optionals.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/MapFinal.playground/Pages/04Optionals.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /05/MapFinal.playground/Pages/05Result.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/MapFinal.playground/Pages/05Result.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /05/MapFinal.playground/Pages/06Writer.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/MapFinal.playground/Pages/06Writer.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /05/MapFinal.playground/Pages/07TheMapPattern.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/MapFinal.playground/Pages/07TheMapPattern.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /05/MapFinal.playground/Pages/08Function.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/MapFinal.playground/Pages/08Function.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /05/MapFinal.playground/Pages/08Function.xcplaygroundpage/Resources/Cover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/MapFinal.playground/Pages/08Function.xcplaygroundpage/Resources/Cover.png -------------------------------------------------------------------------------- /05/MapFinal.playground/Pages/08Function.xcplaygroundpage/Resources/Title.txt: -------------------------------------------------------------------------------- 1 | Functional Programming Kickstart 2 | -------------------------------------------------------------------------------- /05/MapFinal.playground/Pages/09State.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/MapFinal.playground/Pages/09State.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /05/MapFinal.playground/Sources/BagOfTricks.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/MapFinal.playground/Sources/BagOfTricks.swift -------------------------------------------------------------------------------- /05/MapFinal.playground/Sources/Card.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/MapFinal.playground/Sources/Card.swift -------------------------------------------------------------------------------- /05/MapFinal.playground/Sources/CustomOperators.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/MapFinal.playground/Sources/CustomOperators.swift -------------------------------------------------------------------------------- /05/MapFinal.playground/Sources/Deck.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/MapFinal.playground/Sources/Deck.swift -------------------------------------------------------------------------------- /05/MapFinal.playground/Sources/Rank.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/MapFinal.playground/Sources/Rank.swift -------------------------------------------------------------------------------- /05/MapFinal.playground/Sources/Suit.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/MapFinal.playground/Sources/Suit.swift -------------------------------------------------------------------------------- /05/MapFinal.playground/contents.xcplayground: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/05/MapFinal.playground/contents.xcplayground -------------------------------------------------------------------------------- /06/FlatMap.playground/Pages/01TheMagicOfFlatMap.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/Pages/01TheMagicOfFlatMap.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /06/FlatMap.playground/Pages/02Writer.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/Pages/02Writer.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /06/FlatMap.playground/Pages/03ShinyTrunk.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/Pages/03ShinyTrunk.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /06/FlatMap.playground/Pages/04Result.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/Pages/04Result.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /06/FlatMap.playground/Pages/05Optionals.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/Pages/05Optionals.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /06/FlatMap.playground/Pages/06TheShape.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/Pages/06TheShape.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /06/FlatMap.playground/Pages/07Just.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/Pages/07Just.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /06/FlatMap.playground/Pages/08Monoids.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/Pages/08Monoids.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /06/FlatMap.playground/Sources/Cards/Card.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/Sources/Cards/Card.swift -------------------------------------------------------------------------------- /06/FlatMap.playground/Sources/Cards/Deck.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/Sources/Cards/Deck.swift -------------------------------------------------------------------------------- /06/FlatMap.playground/Sources/Cards/Rank.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/Sources/Cards/Rank.swift -------------------------------------------------------------------------------- /06/FlatMap.playground/Sources/Cards/Suit.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/Sources/Cards/Suit.swift -------------------------------------------------------------------------------- /06/FlatMap.playground/Sources/CustomOperators.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/Sources/CustomOperators.swift -------------------------------------------------------------------------------- /06/FlatMap.playground/Sources/Functors/Reader.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/Sources/Functors/Reader.swift -------------------------------------------------------------------------------- /06/FlatMap.playground/Sources/Functors/ShinyTrunk.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/Sources/Functors/ShinyTrunk.swift -------------------------------------------------------------------------------- /06/FlatMap.playground/Sources/Functors/State.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/Sources/Functors/State.swift -------------------------------------------------------------------------------- /06/FlatMap.playground/Sources/Functors/Writer.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/Sources/Functors/Writer.swift -------------------------------------------------------------------------------- /06/FlatMap.playground/Sources/Functors/WriterM.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/Sources/Functors/WriterM.swift -------------------------------------------------------------------------------- /06/FlatMap.playground/Sources/Point.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/Sources/Point.swift -------------------------------------------------------------------------------- /06/FlatMap.playground/Sources/Views/CardView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/Sources/Views/CardView.swift -------------------------------------------------------------------------------- /06/FlatMap.playground/Sources/Views/DeckView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/Sources/Views/DeckView.swift -------------------------------------------------------------------------------- /06/FlatMap.playground/Sources/Views/FlexibleHandView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/Sources/Views/FlexibleHandView.swift -------------------------------------------------------------------------------- /06/FlatMap.playground/Sources/Views/HandOfHandsView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/Sources/Views/HandOfHandsView.swift -------------------------------------------------------------------------------- /06/FlatMap.playground/Sources/Views/HandView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/Sources/Views/HandView.swift -------------------------------------------------------------------------------- /06/FlatMap.playground/Sources/Views/ViewConstants.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/Sources/Views/ViewConstants.swift -------------------------------------------------------------------------------- /06/FlatMap.playground/contents.xcplayground: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMap.playground/contents.xcplayground -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Pages/01TheMagicOfFlatMap.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Pages/01TheMagicOfFlatMap.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Pages/02Writer.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Pages/02Writer.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Pages/03ShinyTrunk.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Pages/03ShinyTrunk.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Pages/04Result.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Pages/04Result.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Pages/05Optionals.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Pages/05Optionals.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Pages/06TheShape.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Pages/06TheShape.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Pages/07Just.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Pages/07Just.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Pages/08Monoids.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Pages/08Monoids.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Sources/Cards/Card.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Sources/Cards/Card.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Sources/Cards/Deck.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Sources/Cards/Deck.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Sources/Cards/Rank.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Sources/Cards/Rank.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Sources/Cards/Suit.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Sources/Cards/Suit.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Sources/CustomOperators.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Sources/CustomOperators.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Sources/Functors/Monoid.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Sources/Functors/Monoid.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Sources/Functors/Reader.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Sources/Functors/Reader.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Sources/Functors/ShinyTrunk.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Sources/Functors/ShinyTrunk.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Sources/Functors/State.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Sources/Functors/State.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Sources/Functors/Writer.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Sources/Functors/Writer.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Sources/Functors/WriterM.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Sources/Functors/WriterM.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Sources/Point.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Sources/Point.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Sources/Views/CardView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Sources/Views/CardView.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Sources/Views/DeckView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Sources/Views/DeckView.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Sources/Views/FlexibleHandView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Sources/Views/FlexibleHandView.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Sources/Views/HandOfHandsView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Sources/Views/HandOfHandsView.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Sources/Views/HandView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Sources/Views/HandView.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/Sources/Views/ViewConstants.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/Sources/Views/ViewConstants.swift -------------------------------------------------------------------------------- /06/FlatMapFinal.playground/contents.xcplayground: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/06/FlatMapFinal.playground/contents.xcplayground -------------------------------------------------------------------------------- /07/Apply.playground/Contents.swift: -------------------------------------------------------------------------------- 1 | import UIKit 2 | 3 | var str = "Hello, playground" 4 | -------------------------------------------------------------------------------- /07/Apply.playground/Pages/01TheMagicOfApply.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/Apply.playground/Pages/01TheMagicOfApply.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /07/Apply.playground/Pages/02Arrays.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/Apply.playground/Pages/02Arrays.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /07/Apply.playground/Pages/03Interchange.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/Apply.playground/Pages/03Interchange.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /07/Apply.playground/Pages/04Currying.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/Apply.playground/Pages/04Currying.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /07/Apply.playground/Pages/05Optionals.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/Apply.playground/Pages/05Optionals.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /07/Apply.playground/Pages/06BetweenFunctorAndMonad.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/Apply.playground/Pages/06BetweenFunctorAndMonad.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /07/Apply.playground/Pages/07Result.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/Apply.playground/Pages/07Result.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /07/Apply.playground/Pages/08Validated.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/Apply.playground/Pages/08Validated.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /07/Apply.playground/Sources/BagOfTricks.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/Apply.playground/Sources/BagOfTricks.swift -------------------------------------------------------------------------------- /07/Apply.playground/Sources/CustomOperators.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/Apply.playground/Sources/CustomOperators.swift -------------------------------------------------------------------------------- /07/Apply.playground/Sources/Monads/ArrayAdditions.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/Apply.playground/Sources/Monads/ArrayAdditions.swift -------------------------------------------------------------------------------- /07/Apply.playground/Sources/Monads/OptionalAdditions.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/Apply.playground/Sources/Monads/OptionalAdditions.swift -------------------------------------------------------------------------------- /07/Apply.playground/Sources/Monads/ResultAdditions.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/Apply.playground/Sources/Monads/ResultAdditions.swift -------------------------------------------------------------------------------- /07/Apply.playground/Sources/Monads/ShinyTrunk.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/Apply.playground/Sources/Monads/ShinyTrunk.swift -------------------------------------------------------------------------------- /07/Apply.playground/Sources/Monoid.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/Apply.playground/Sources/Monoid.swift -------------------------------------------------------------------------------- /07/Apply.playground/Sources/Point.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/Apply.playground/Sources/Point.swift -------------------------------------------------------------------------------- /07/Apply.playground/Sources/SimpleButton.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/Apply.playground/Sources/SimpleButton.swift -------------------------------------------------------------------------------- /07/Apply.playground/Sources/Validated.swift: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /07/Apply.playground/contents.xcplayground: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/Apply.playground/contents.xcplayground -------------------------------------------------------------------------------- /07/ApplyFinal.playground/Contents.swift: -------------------------------------------------------------------------------- 1 | import UIKit 2 | 3 | var str = "Hello, playground" 4 | -------------------------------------------------------------------------------- /07/ApplyFinal.playground/Pages/01TheMagicOfApply.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/ApplyFinal.playground/Pages/01TheMagicOfApply.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /07/ApplyFinal.playground/Pages/02Arrays.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/ApplyFinal.playground/Pages/02Arrays.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /07/ApplyFinal.playground/Pages/03Interchange.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/ApplyFinal.playground/Pages/03Interchange.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /07/ApplyFinal.playground/Pages/04Currying.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/ApplyFinal.playground/Pages/04Currying.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /07/ApplyFinal.playground/Pages/05Optionals.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/ApplyFinal.playground/Pages/05Optionals.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /07/ApplyFinal.playground/Pages/06BetweenFunctorAndMonad.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/ApplyFinal.playground/Pages/06BetweenFunctorAndMonad.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /07/ApplyFinal.playground/Pages/07Result.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/ApplyFinal.playground/Pages/07Result.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /07/ApplyFinal.playground/Pages/08Validated.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/ApplyFinal.playground/Pages/08Validated.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /07/ApplyFinal.playground/Sources/BagOfTricks.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/ApplyFinal.playground/Sources/BagOfTricks.swift -------------------------------------------------------------------------------- /07/ApplyFinal.playground/Sources/CustomOperators.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/ApplyFinal.playground/Sources/CustomOperators.swift -------------------------------------------------------------------------------- /07/ApplyFinal.playground/Sources/Monads/ArrayAdditions.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/ApplyFinal.playground/Sources/Monads/ArrayAdditions.swift -------------------------------------------------------------------------------- /07/ApplyFinal.playground/Sources/Monads/OptionalAdditions.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/ApplyFinal.playground/Sources/Monads/OptionalAdditions.swift -------------------------------------------------------------------------------- /07/ApplyFinal.playground/Sources/Monads/ResultAdditions.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/ApplyFinal.playground/Sources/Monads/ResultAdditions.swift -------------------------------------------------------------------------------- /07/ApplyFinal.playground/Sources/Monads/ShinyTrunk.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/ApplyFinal.playground/Sources/Monads/ShinyTrunk.swift -------------------------------------------------------------------------------- /07/ApplyFinal.playground/Sources/Monoid.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/ApplyFinal.playground/Sources/Monoid.swift -------------------------------------------------------------------------------- /07/ApplyFinal.playground/Sources/Point.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/ApplyFinal.playground/Sources/Point.swift -------------------------------------------------------------------------------- /07/ApplyFinal.playground/Sources/SimpleButton.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/ApplyFinal.playground/Sources/SimpleButton.swift -------------------------------------------------------------------------------- /07/ApplyFinal.playground/Sources/Validated.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/ApplyFinal.playground/Sources/Validated.swift -------------------------------------------------------------------------------- /07/ApplyFinal.playground/contents.xcplayground: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/07/ApplyFinal.playground/contents.xcplayground -------------------------------------------------------------------------------- /08/DeeperMagic.playground/Contents.swift: -------------------------------------------------------------------------------- 1 | import UIKit 2 | 3 | var str = "Hello, playground" 4 | -------------------------------------------------------------------------------- /08/DeeperMagic.playground/Pages/01StringFunction.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/08/DeeperMagic.playground/Pages/01StringFunction.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /08/DeeperMagic.playground/Pages/02Reader.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/08/DeeperMagic.playground/Pages/02Reader.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /08/DeeperMagic.playground/Pages/03TheReaderMonad.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/08/DeeperMagic.playground/Pages/03TheReaderMonad.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /08/DeeperMagic.playground/Pages/04Parsers.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/08/DeeperMagic.playground/Pages/04Parsers.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /08/DeeperMagic.playground/Pages/05State.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/08/DeeperMagic.playground/Pages/05State.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /08/DeeperMagic.playground/Pages/06TheStateMonad.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/08/DeeperMagic.playground/Pages/06TheStateMonad.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /08/DeeperMagic.playground/Sources/Cards/Card.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/08/DeeperMagic.playground/Sources/Cards/Card.swift -------------------------------------------------------------------------------- /08/DeeperMagic.playground/Sources/Cards/Deck.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/08/DeeperMagic.playground/Sources/Cards/Deck.swift -------------------------------------------------------------------------------- /08/DeeperMagic.playground/Sources/Cards/Rank.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/08/DeeperMagic.playground/Sources/Cards/Rank.swift -------------------------------------------------------------------------------- /08/DeeperMagic.playground/Sources/Cards/Suit.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/08/DeeperMagic.playground/Sources/Cards/Suit.swift -------------------------------------------------------------------------------- /08/DeeperMagic.playground/Sources/Point.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/08/DeeperMagic.playground/Sources/Point.swift -------------------------------------------------------------------------------- /08/DeeperMagic.playground/contents.xcplayground: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/08/DeeperMagic.playground/contents.xcplayground -------------------------------------------------------------------------------- /08/DeeperMagicFinal.playground/Contents.swift: -------------------------------------------------------------------------------- 1 | import UIKit 2 | 3 | var str = "Hello, playground" 4 | -------------------------------------------------------------------------------- /08/DeeperMagicFinal.playground/Pages/01StringFunction.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/08/DeeperMagicFinal.playground/Pages/01StringFunction.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /08/DeeperMagicFinal.playground/Pages/02Reader.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/08/DeeperMagicFinal.playground/Pages/02Reader.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /08/DeeperMagicFinal.playground/Pages/03TheReaderMonad.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/08/DeeperMagicFinal.playground/Pages/03TheReaderMonad.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /08/DeeperMagicFinal.playground/Pages/04Parsers.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/08/DeeperMagicFinal.playground/Pages/04Parsers.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /08/DeeperMagicFinal.playground/Pages/05State.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/08/DeeperMagicFinal.playground/Pages/05State.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /08/DeeperMagicFinal.playground/Pages/06TheStateMonad.xcplaygroundpage/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/08/DeeperMagicFinal.playground/Pages/06TheStateMonad.xcplaygroundpage/Contents.swift -------------------------------------------------------------------------------- /08/DeeperMagicFinal.playground/Sources/Cards/Card.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/08/DeeperMagicFinal.playground/Sources/Cards/Card.swift -------------------------------------------------------------------------------- /08/DeeperMagicFinal.playground/Sources/Cards/Deck.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/08/DeeperMagicFinal.playground/Sources/Cards/Deck.swift -------------------------------------------------------------------------------- /08/DeeperMagicFinal.playground/Sources/Cards/Rank.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/08/DeeperMagicFinal.playground/Sources/Cards/Rank.swift -------------------------------------------------------------------------------- /08/DeeperMagicFinal.playground/Sources/Cards/Suit.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/08/DeeperMagicFinal.playground/Sources/Cards/Suit.swift -------------------------------------------------------------------------------- /08/DeeperMagicFinal.playground/Sources/Point.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/08/DeeperMagicFinal.playground/Sources/Point.swift -------------------------------------------------------------------------------- /08/DeeperMagicFinal.playground/contents.xcplayground: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/08/DeeperMagicFinal.playground/contents.xcplayground -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/editorscut/ec010functionalkickstart/HEAD/README.md --------------------------------------------------------------------------------