├── .gitignore ├── Playgrounds ├── 1a_I_See_No_Nil.playground │ ├── Sources │ │ └── SupportCode.swift │ ├── contents.swift │ ├── contents.xcplayground │ ├── playground.xcworkspace │ │ └── contents.xcworkspacedata │ └── timeline.xctimeline ├── 1b_Going_Bananas.playground │ ├── contents.swift │ ├── contents.xcplayground │ ├── playground.xcworkspace │ │ └── contents.xcworkspacedata │ └── timeline.xctimeline ├── 2a_Maybe_Type.playground │ ├── Sources │ │ └── SupportCode.swift │ ├── contents.swift │ ├── contents.xcplayground │ ├── playground.xcworkspace │ │ └── contents.xcworkspacedata │ └── timeline.xctimeline ├── 2b_Maybe_Type_Monad.playground │ ├── Sources │ │ └── SupportCode.swift │ ├── contents.swift │ ├── contents.xcplayground │ ├── playground.xcworkspace │ │ └── contents.xcworkspacedata │ └── timeline.xctimeline ├── 3a_Optional_Madness.playground │ ├── Sources │ │ └── SupportCode.swift │ ├── contents.swift │ ├── contents.xcplayground │ ├── playground.xcworkspace │ │ └── contents.xcworkspacedata │ └── timeline.xctimeline ├── 4a_Three_Binds_Are_Better_Than_One.playground │ ├── Contents.swift │ ├── Resources │ │ └── person.json │ ├── Sources │ │ └── SupportCode.swift │ ├── contents.xcplayground │ ├── playground.xcworkspace │ │ └── contents.xcworkspacedata │ └── timeline.xctimeline ├── 5a_flatMap_for_Array.playground │ ├── Contents.swift │ ├── Sources │ │ └── SupportCode.swift │ ├── contents.xcplayground │ ├── playground.xcworkspace │ │ └── contents.xcworkspacedata │ └── timeline.xctimeline ├── 5b_More_flatMap_for_Squirrels.playground │ ├── Contents.swift │ ├── Sources │ │ └── SupportCode.swift │ ├── contents.xcplayground │ ├── playground.xcworkspace │ │ └── contents.xcworkspacedata │ └── timeline.xctimeline └── 6a_Threatening_Monad.playground │ ├── Contents.swift │ ├── Sources │ └── SupportCode.swift │ ├── contents.xcplayground │ ├── playground.xcworkspace │ └── contents.xcworkspacedata │ └── timeline.xctimeline └── README.md /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/.gitignore -------------------------------------------------------------------------------- /Playgrounds/1a_I_See_No_Nil.playground/Sources/SupportCode.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/1a_I_See_No_Nil.playground/Sources/SupportCode.swift -------------------------------------------------------------------------------- /Playgrounds/1a_I_See_No_Nil.playground/contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/1a_I_See_No_Nil.playground/contents.swift -------------------------------------------------------------------------------- /Playgrounds/1a_I_See_No_Nil.playground/contents.xcplayground: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/1a_I_See_No_Nil.playground/contents.xcplayground -------------------------------------------------------------------------------- /Playgrounds/1a_I_See_No_Nil.playground/playground.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/1a_I_See_No_Nil.playground/playground.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /Playgrounds/1a_I_See_No_Nil.playground/timeline.xctimeline: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/1a_I_See_No_Nil.playground/timeline.xctimeline -------------------------------------------------------------------------------- /Playgrounds/1b_Going_Bananas.playground/contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/1b_Going_Bananas.playground/contents.swift -------------------------------------------------------------------------------- /Playgrounds/1b_Going_Bananas.playground/contents.xcplayground: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/1b_Going_Bananas.playground/contents.xcplayground -------------------------------------------------------------------------------- /Playgrounds/1b_Going_Bananas.playground/playground.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/1b_Going_Bananas.playground/playground.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /Playgrounds/1b_Going_Bananas.playground/timeline.xctimeline: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/1b_Going_Bananas.playground/timeline.xctimeline -------------------------------------------------------------------------------- /Playgrounds/2a_Maybe_Type.playground/Sources/SupportCode.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/2a_Maybe_Type.playground/Sources/SupportCode.swift -------------------------------------------------------------------------------- /Playgrounds/2a_Maybe_Type.playground/contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/2a_Maybe_Type.playground/contents.swift -------------------------------------------------------------------------------- /Playgrounds/2a_Maybe_Type.playground/contents.xcplayground: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/2a_Maybe_Type.playground/contents.xcplayground -------------------------------------------------------------------------------- /Playgrounds/2a_Maybe_Type.playground/playground.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/2a_Maybe_Type.playground/playground.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /Playgrounds/2a_Maybe_Type.playground/timeline.xctimeline: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/2a_Maybe_Type.playground/timeline.xctimeline -------------------------------------------------------------------------------- /Playgrounds/2b_Maybe_Type_Monad.playground/Sources/SupportCode.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/2b_Maybe_Type_Monad.playground/Sources/SupportCode.swift -------------------------------------------------------------------------------- /Playgrounds/2b_Maybe_Type_Monad.playground/contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/2b_Maybe_Type_Monad.playground/contents.swift -------------------------------------------------------------------------------- /Playgrounds/2b_Maybe_Type_Monad.playground/contents.xcplayground: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/2b_Maybe_Type_Monad.playground/contents.xcplayground -------------------------------------------------------------------------------- /Playgrounds/2b_Maybe_Type_Monad.playground/playground.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/2b_Maybe_Type_Monad.playground/playground.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /Playgrounds/2b_Maybe_Type_Monad.playground/timeline.xctimeline: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/2b_Maybe_Type_Monad.playground/timeline.xctimeline -------------------------------------------------------------------------------- /Playgrounds/3a_Optional_Madness.playground/Sources/SupportCode.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/3a_Optional_Madness.playground/Sources/SupportCode.swift -------------------------------------------------------------------------------- /Playgrounds/3a_Optional_Madness.playground/contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/3a_Optional_Madness.playground/contents.swift -------------------------------------------------------------------------------- /Playgrounds/3a_Optional_Madness.playground/contents.xcplayground: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/3a_Optional_Madness.playground/contents.xcplayground -------------------------------------------------------------------------------- /Playgrounds/3a_Optional_Madness.playground/playground.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/3a_Optional_Madness.playground/playground.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /Playgrounds/3a_Optional_Madness.playground/timeline.xctimeline: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/3a_Optional_Madness.playground/timeline.xctimeline -------------------------------------------------------------------------------- /Playgrounds/4a_Three_Binds_Are_Better_Than_One.playground/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/4a_Three_Binds_Are_Better_Than_One.playground/Contents.swift -------------------------------------------------------------------------------- /Playgrounds/4a_Three_Binds_Are_Better_Than_One.playground/Resources/person.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/4a_Three_Binds_Are_Better_Than_One.playground/Resources/person.json -------------------------------------------------------------------------------- /Playgrounds/4a_Three_Binds_Are_Better_Than_One.playground/Sources/SupportCode.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/4a_Three_Binds_Are_Better_Than_One.playground/Sources/SupportCode.swift -------------------------------------------------------------------------------- /Playgrounds/4a_Three_Binds_Are_Better_Than_One.playground/contents.xcplayground: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/4a_Three_Binds_Are_Better_Than_One.playground/contents.xcplayground -------------------------------------------------------------------------------- /Playgrounds/4a_Three_Binds_Are_Better_Than_One.playground/playground.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/4a_Three_Binds_Are_Better_Than_One.playground/playground.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /Playgrounds/4a_Three_Binds_Are_Better_Than_One.playground/timeline.xctimeline: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/4a_Three_Binds_Are_Better_Than_One.playground/timeline.xctimeline -------------------------------------------------------------------------------- /Playgrounds/5a_flatMap_for_Array.playground/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/5a_flatMap_for_Array.playground/Contents.swift -------------------------------------------------------------------------------- /Playgrounds/5a_flatMap_for_Array.playground/Sources/SupportCode.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/5a_flatMap_for_Array.playground/Sources/SupportCode.swift -------------------------------------------------------------------------------- /Playgrounds/5a_flatMap_for_Array.playground/contents.xcplayground: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/5a_flatMap_for_Array.playground/contents.xcplayground -------------------------------------------------------------------------------- /Playgrounds/5a_flatMap_for_Array.playground/playground.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/5a_flatMap_for_Array.playground/playground.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /Playgrounds/5a_flatMap_for_Array.playground/timeline.xctimeline: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/5a_flatMap_for_Array.playground/timeline.xctimeline -------------------------------------------------------------------------------- /Playgrounds/5b_More_flatMap_for_Squirrels.playground/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/5b_More_flatMap_for_Squirrels.playground/Contents.swift -------------------------------------------------------------------------------- /Playgrounds/5b_More_flatMap_for_Squirrels.playground/Sources/SupportCode.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/5b_More_flatMap_for_Squirrels.playground/Sources/SupportCode.swift -------------------------------------------------------------------------------- /Playgrounds/5b_More_flatMap_for_Squirrels.playground/contents.xcplayground: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/5b_More_flatMap_for_Squirrels.playground/contents.xcplayground -------------------------------------------------------------------------------- /Playgrounds/5b_More_flatMap_for_Squirrels.playground/playground.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/5b_More_flatMap_for_Squirrels.playground/playground.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /Playgrounds/5b_More_flatMap_for_Squirrels.playground/timeline.xctimeline: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/5b_More_flatMap_for_Squirrels.playground/timeline.xctimeline -------------------------------------------------------------------------------- /Playgrounds/6a_Threatening_Monad.playground/Contents.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/6a_Threatening_Monad.playground/Contents.swift -------------------------------------------------------------------------------- /Playgrounds/6a_Threatening_Monad.playground/Sources/SupportCode.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/6a_Threatening_Monad.playground/Sources/SupportCode.swift -------------------------------------------------------------------------------- /Playgrounds/6a_Threatening_Monad.playground/contents.xcplayground: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/6a_Threatening_Monad.playground/contents.xcplayground -------------------------------------------------------------------------------- /Playgrounds/6a_Threatening_Monad.playground/playground.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/6a_Threatening_Monad.playground/playground.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /Playgrounds/6a_Threatening_Monad.playground/timeline.xctimeline: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/Playgrounds/6a_Threatening_Monad.playground/timeline.xctimeline -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alskipp/Swift-Adventures-In-Monad-Land/HEAD/README.md --------------------------------------------------------------------------------