├── .gitignore ├── .idea ├── .gitignore ├── .name ├── codeStyles │ ├── Project.xml │ └── codeStyleConfig.xml ├── misc.xml ├── modules.xml ├── modules │ ├── scala-3-beginners-build.iml │ └── scala-3-beginners.iml ├── sbt.xml ├── scala_compiler.xml ├── scala_settings.xml └── vcs.xml ├── README.md ├── project └── build.properties └── src └── main └── scala └── com └── rockthejvm ├── part1basics ├── CBNvsCBV.scala ├── DefaultArgs.scala ├── Expressions.scala ├── Functions.scala ├── Recursion.scala ├── StringOps.scala └── ValuesAndTypes.scala ├── part2oop ├── AbstractDataTypes.scala ├── AccessModifiers.scala ├── AnonymousClasses.scala ├── CaseClasses.scala ├── Enums.scala ├── Exceptions.scala ├── Generics.scala ├── Inheritance.scala ├── MethodNotations.scala ├── OOBasics.scala ├── Objects.scala ├── PackagesImports.scala └── PreventingInheritance.scala ├── part3fp ├── AnonymousFunctions.scala ├── HOFsCurrying.scala ├── HandlingFailure.scala ├── LinearCollections.scala ├── MapFlatMapFilterFor.scala ├── Options.scala ├── TuplesMaps.scala └── WhatsAFunction.scala ├── part4power ├── AllThePatterns.scala ├── BracelessSyntax.scala ├── ImperativeProgramming.scala ├── PatternMatching.scala └── PatternsEverywhere.scala ├── playground └── Playground.scala └── practice ├── LList.scala ├── Maybe.scala └── TuplesMapsExercises.scala /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/.gitignore -------------------------------------------------------------------------------- /.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /shelf/ 3 | /workspace.xml 4 | -------------------------------------------------------------------------------- /.idea/.name: -------------------------------------------------------------------------------- 1 | scala-3-beginners -------------------------------------------------------------------------------- /.idea/codeStyles/Project.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/.idea/codeStyles/Project.xml -------------------------------------------------------------------------------- /.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/.idea/codeStyles/codeStyleConfig.xml -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/.idea/misc.xml -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/.idea/modules.xml -------------------------------------------------------------------------------- /.idea/modules/scala-3-beginners-build.iml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/.idea/modules/scala-3-beginners-build.iml -------------------------------------------------------------------------------- /.idea/modules/scala-3-beginners.iml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/.idea/modules/scala-3-beginners.iml -------------------------------------------------------------------------------- /.idea/sbt.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/.idea/sbt.xml -------------------------------------------------------------------------------- /.idea/scala_compiler.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/.idea/scala_compiler.xml -------------------------------------------------------------------------------- /.idea/scala_settings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/.idea/scala_settings.xml -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/.idea/vcs.xml -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/README.md -------------------------------------------------------------------------------- /project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.10.10 2 | -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part1basics/CBNvsCBV.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part1basics/CBNvsCBV.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part1basics/DefaultArgs.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part1basics/DefaultArgs.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part1basics/Expressions.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part1basics/Expressions.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part1basics/Functions.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part1basics/Functions.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part1basics/Recursion.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part1basics/Recursion.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part1basics/StringOps.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part1basics/StringOps.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part1basics/ValuesAndTypes.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part1basics/ValuesAndTypes.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part2oop/AbstractDataTypes.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part2oop/AbstractDataTypes.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part2oop/AccessModifiers.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part2oop/AccessModifiers.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part2oop/AnonymousClasses.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part2oop/AnonymousClasses.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part2oop/CaseClasses.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part2oop/CaseClasses.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part2oop/Enums.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part2oop/Enums.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part2oop/Exceptions.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part2oop/Exceptions.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part2oop/Generics.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part2oop/Generics.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part2oop/Inheritance.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part2oop/Inheritance.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part2oop/MethodNotations.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part2oop/MethodNotations.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part2oop/OOBasics.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part2oop/OOBasics.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part2oop/Objects.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part2oop/Objects.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part2oop/PackagesImports.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part2oop/PackagesImports.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part2oop/PreventingInheritance.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part2oop/PreventingInheritance.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part3fp/AnonymousFunctions.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part3fp/AnonymousFunctions.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part3fp/HOFsCurrying.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part3fp/HOFsCurrying.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part3fp/HandlingFailure.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part3fp/HandlingFailure.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part3fp/LinearCollections.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part3fp/LinearCollections.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part3fp/MapFlatMapFilterFor.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part3fp/MapFlatMapFilterFor.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part3fp/Options.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part3fp/Options.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part3fp/TuplesMaps.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part3fp/TuplesMaps.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part3fp/WhatsAFunction.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part3fp/WhatsAFunction.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part4power/AllThePatterns.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part4power/AllThePatterns.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part4power/BracelessSyntax.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part4power/BracelessSyntax.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part4power/ImperativeProgramming.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part4power/ImperativeProgramming.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part4power/PatternMatching.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part4power/PatternMatching.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part4power/PatternsEverywhere.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/part4power/PatternsEverywhere.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/playground/Playground.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/playground/Playground.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/practice/LList.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/practice/LList.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/practice/Maybe.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/practice/Maybe.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/practice/TuplesMapsExercises.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/scala-3-beginners/HEAD/src/main/scala/com/rockthejvm/practice/TuplesMapsExercises.scala --------------------------------------------------------------------------------