├── .gitignore ├── ClojureExamples ├── project.clj ├── src │ ├── java │ │ └── com │ │ │ └── mblinn │ │ │ └── oo │ │ │ └── tinyweb │ │ │ ├── Controller.java │ │ │ ├── ControllerException.java │ │ │ ├── Filter.java │ │ │ ├── HttpRequest.java │ │ │ ├── HttpResponse.java │ │ │ ├── RenderingException.java │ │ │ ├── RenderingStrategy.java │ │ │ ├── StrategyView.java │ │ │ ├── TemplateController.java │ │ │ ├── TinyWeb.java │ │ │ ├── View.java │ │ │ └── example │ │ │ ├── ExampleHarness.java │ │ │ ├── GreetingController.java │ │ │ ├── GreetingRenderingStrategy.java │ │ │ └── LoggingFilter.java │ └── mbfpp │ │ ├── functional │ │ ├── ccf │ │ │ └── ccf_examples.clj │ │ ├── coo │ │ │ └── examples.clj │ │ ├── di │ │ │ └── examples.clj │ │ ├── dsl │ │ │ └── examples.clj │ │ ├── fb │ │ │ ├── composition_examples.clj │ │ │ ├── discount_builder.clj │ │ │ ├── partial_examples.clj │ │ │ └── selector.clj │ │ ├── fm │ │ │ └── examples.clj │ │ ├── ls │ │ │ └── examples.clj │ │ ├── memoization │ │ │ └── examples.clj │ │ ├── mfr │ │ │ └── discount.clj │ │ ├── mr │ │ │ └── phases.clj │ │ └── tr │ │ │ └── names.clj │ │ ├── oo │ │ ├── command │ │ │ └── cash_register.clj │ │ ├── decorator │ │ │ └── examples.clj │ │ ├── iterator │ │ │ ├── higher_order_functions.clj │ │ │ └── lambda_bar_and_grille.clj │ │ ├── javabean │ │ │ ├── catsanddogslivingtogether.clj │ │ │ ├── person.clj │ │ │ └── sidebar.clj │ │ ├── nullobject │ │ │ └── examples.clj │ │ ├── strategy │ │ │ └── people_example.clj │ │ ├── tinyweb │ │ │ ├── RenderingException.java │ │ │ ├── core.clj │ │ │ ├── example.clj │ │ │ ├── intro.clj │ │ │ ├── stepone.clj │ │ │ └── steptwo.clj │ │ ├── tm │ │ │ └── grade_reporter.clj │ │ └── visitor │ │ │ └── examples.clj │ │ └── rso │ │ ├── closure_comparison.clj │ │ ├── closure_example.clj │ │ ├── logging.clj │ │ ├── person.clj │ │ └── person_expanded.clj └── test │ └── mbfpp │ └── test │ ├── functional │ ├── fb │ │ ├── composition_examples.clj │ │ ├── discount_builder.clj │ │ ├── partial_examples.clj │ │ └── selector.clj │ ├── mfr │ │ └── discount.clj │ ├── mr │ │ └── phases.clj │ └── tr │ │ └── names.clj │ └── oo │ ├── command │ └── cash_register.clj │ ├── iterator │ ├── higher_order_functions.clj │ └── lambda_bar_and_grille.clj │ ├── javabean │ └── catsanddogslivingtogether.clj │ └── tinyweb │ └── core.clj ├── JavaExamples ├── build.sbt ├── project │ └── plugins.sbt └── src │ ├── main │ └── java │ │ └── com │ │ └── mblinn │ │ ├── ex │ │ ├── recursion │ │ │ └── RecursionExample.java │ │ └── repeating │ │ │ └── VowelFilter.java │ │ ├── functional │ │ └── tailrecursion │ │ │ └── Sum.java │ │ ├── mbfpp │ │ ├── functional │ │ │ └── coo │ │ │ │ └── Examples.java │ │ ├── intro │ │ │ └── FilterOdds.java │ │ └── oo │ │ │ ├── command │ │ │ ├── CashRegister.java │ │ │ ├── Command.java │ │ │ ├── Purchase.java │ │ │ ├── PurchaseInvoker.java │ │ │ └── RegisterClient.java │ │ │ ├── di │ │ │ ├── FavoritesService.java │ │ │ ├── MovieDao.java │ │ │ ├── MovieService.java │ │ │ └── ex1 │ │ │ │ ├── DecoratedMovie.java │ │ │ │ ├── FavoriteVideosService.java │ │ │ │ ├── FavoritesService.java │ │ │ │ ├── Movie.java │ │ │ │ ├── MovieDao.java │ │ │ │ ├── MovieService.java │ │ │ │ └── VideoService.java │ │ │ ├── fi │ │ │ ├── ComplicatedNameComparator.java │ │ │ ├── ComposedComparator.java │ │ │ ├── Harness.java │ │ │ ├── Person.java │ │ │ ├── PersonComplicatedSort.java │ │ │ ├── PersonExpanded.java │ │ │ ├── PersonFirstNameSort.java │ │ │ └── PersonNaturalSort.java │ │ │ └── tm │ │ │ ├── FullGradeReporter.java │ │ │ ├── GradeReporterTemplate.java │ │ │ └── PlusMinusGradeReporter.java │ │ └── oo │ │ ├── iterator │ │ ├── Address.java │ │ ├── HigherOrderFunctions.java │ │ ├── Person.java │ │ └── TheLambdaBarAndGrille.java │ │ ├── javabean │ │ ├── ImmutablePerson.java │ │ ├── Person.java │ │ └── PersonHarness.java │ │ ├── nullobject │ │ ├── NullPerson.java │ │ ├── Person.java │ │ ├── PersonExample.java │ │ └── RealPerson.java │ │ ├── strategy │ │ ├── FirstNameValidator.java │ │ ├── FullNameValidator.java │ │ ├── Person.java │ │ ├── PersonCollector.java │ │ └── PersonValidator.java │ │ └── tinyweb │ │ ├── Controller.java │ │ ├── ControllerException.java │ │ ├── Filter.java │ │ ├── HttpRequest.java │ │ ├── HttpResponse.java │ │ ├── RenderingException.java │ │ ├── RenderingStrategy.java │ │ ├── StrategyView.java │ │ ├── TemplateController.java │ │ ├── TinyWeb.java │ │ ├── View.java │ │ └── example │ │ ├── ExampleHarness.java │ │ ├── GreetingController.java │ │ ├── GreetingRenderingStrategy.java │ │ └── LoggingFilter.java │ └── test │ └── java │ └── com │ └── mblinn │ ├── mbfpp │ └── oo │ │ ├── fi │ │ └── PersonExpandedTest.java │ │ └── tinyweb │ │ ├── CommandViewTest.java │ │ ├── HttpRequestResponseTest.java │ │ ├── ITestTinyweb.java │ │ ├── TemplateControllerTest.java │ │ └── stubs │ │ ├── AddDummyHeaderFilter.java │ │ ├── DummyController.java │ │ ├── DummyView.java │ │ ├── DummyViewRenderer.java │ │ ├── ExceptionalController.java │ │ ├── ExceptionalView.java │ │ └── ExceptionalViewRenderer.java │ └── oo │ ├── command │ ├── CashRegisterTests.java │ ├── PurchaseInvokerTests.java │ └── RecordingStubCommand.java │ ├── iterator │ └── HigherOrderFunctionsTests.java │ └── strategy │ ├── DummyValidator.java │ ├── FirstNameValidatorTest.java │ ├── FullNameValidatorTest.java │ └── PersonCollectorTest.java ├── README.md ├── ScalaExamples ├── build.sbt ├── project │ └── sbt-idea-shim.sbt └── src │ ├── main │ └── scala │ │ └── com │ │ └── mblinn │ │ └── mbfpp │ │ ├── functional │ │ ├── ccf │ │ │ └── Choose.scala │ │ ├── coo │ │ │ └── Examples.scala │ │ ├── dsl │ │ │ └── Example.scala │ │ ├── fb │ │ │ ├── CompositionExamples.scala │ │ │ ├── DiscountBuilder.scala │ │ │ ├── PartialExamples.scala │ │ │ └── Selector.scala │ │ ├── fm │ │ │ └── FocusedMutation.scala │ │ ├── ls │ │ │ └── LazySequence.scala │ │ ├── memoization │ │ │ └── Examples.scala │ │ ├── mfr │ │ │ └── Discount.scala │ │ ├── mr │ │ │ ├── EvenOdd.scala │ │ │ └── Phases.scala │ │ └── tr │ │ │ └── Names.scala │ │ └── oo │ │ ├── command │ │ └── register │ │ │ └── Register.scala │ │ ├── decorator │ │ └── Examples.scala │ │ ├── di │ │ └── ex1 │ │ │ └── Services.scala │ │ ├── fi │ │ ├── PersonExample.scala │ │ ├── PersonExpanded.scala │ │ └── personexpanded │ │ │ └── ClosureExample.scala │ │ ├── iterator │ │ ├── HigherOrderFunctions.scala │ │ └── TheLambdaBarAndGrille.scala │ │ ├── javabean │ │ └── Person.scala │ │ ├── nullobject │ │ └── Examples.scala │ │ ├── strategy │ │ └── PeopleExample.scala │ │ ├── tinyweb │ │ ├── example │ │ │ └── Example.scala │ │ ├── stepfour │ │ │ ├── Controller.scala │ │ │ ├── HttpData.scala │ │ │ ├── Tinyweb.scala │ │ │ └── View.scala │ │ ├── stepone │ │ │ └── View.scala │ │ ├── stepthree │ │ │ ├── Controller.scala │ │ │ ├── HttpData.scala │ │ │ └── View.scala │ │ └── steptwo │ │ │ ├── Controller.scala │ │ │ └── View.scala │ │ ├── tm │ │ └── GradeReporter.scala │ │ └── visitor │ │ ├── Examples.scala │ │ └── Shapes.scala │ └── test │ └── scala │ └── com │ └── mblinn │ └── mbfpp │ ├── functional │ ├── ccf │ │ └── ChooseSpec.scala │ ├── fb │ │ ├── DiscountBuilder.scala │ │ └── Selector.scala │ ├── mfr │ │ └── DiscountSpec.scala │ ├── mr │ │ ├── EvenOddSpec.scala │ │ └── PhasesSpec.scala │ ├── strategy │ │ └── PeopleExampleSpec.scala │ └── tr │ │ └── NamesSpec.scala │ └── oo │ ├── fi │ └── PersonExampleSpec.scala │ └── iterator │ ├── HigherOrderFunctions.scala │ └── LambdaBarAndGrille.scala └── project └── sbt-idea-shim.sbt /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/.gitignore -------------------------------------------------------------------------------- /ClojureExamples/project.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/project.clj -------------------------------------------------------------------------------- /ClojureExamples/src/java/com/mblinn/oo/tinyweb/Controller.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/java/com/mblinn/oo/tinyweb/Controller.java -------------------------------------------------------------------------------- /ClojureExamples/src/java/com/mblinn/oo/tinyweb/ControllerException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/java/com/mblinn/oo/tinyweb/ControllerException.java -------------------------------------------------------------------------------- /ClojureExamples/src/java/com/mblinn/oo/tinyweb/Filter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/java/com/mblinn/oo/tinyweb/Filter.java -------------------------------------------------------------------------------- /ClojureExamples/src/java/com/mblinn/oo/tinyweb/HttpRequest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/java/com/mblinn/oo/tinyweb/HttpRequest.java -------------------------------------------------------------------------------- /ClojureExamples/src/java/com/mblinn/oo/tinyweb/HttpResponse.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/java/com/mblinn/oo/tinyweb/HttpResponse.java -------------------------------------------------------------------------------- /ClojureExamples/src/java/com/mblinn/oo/tinyweb/RenderingException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/java/com/mblinn/oo/tinyweb/RenderingException.java -------------------------------------------------------------------------------- /ClojureExamples/src/java/com/mblinn/oo/tinyweb/RenderingStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/java/com/mblinn/oo/tinyweb/RenderingStrategy.java -------------------------------------------------------------------------------- /ClojureExamples/src/java/com/mblinn/oo/tinyweb/StrategyView.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/java/com/mblinn/oo/tinyweb/StrategyView.java -------------------------------------------------------------------------------- /ClojureExamples/src/java/com/mblinn/oo/tinyweb/TemplateController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/java/com/mblinn/oo/tinyweb/TemplateController.java -------------------------------------------------------------------------------- /ClojureExamples/src/java/com/mblinn/oo/tinyweb/TinyWeb.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/java/com/mblinn/oo/tinyweb/TinyWeb.java -------------------------------------------------------------------------------- /ClojureExamples/src/java/com/mblinn/oo/tinyweb/View.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/java/com/mblinn/oo/tinyweb/View.java -------------------------------------------------------------------------------- /ClojureExamples/src/java/com/mblinn/oo/tinyweb/example/ExampleHarness.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/java/com/mblinn/oo/tinyweb/example/ExampleHarness.java -------------------------------------------------------------------------------- /ClojureExamples/src/java/com/mblinn/oo/tinyweb/example/GreetingController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/java/com/mblinn/oo/tinyweb/example/GreetingController.java -------------------------------------------------------------------------------- /ClojureExamples/src/java/com/mblinn/oo/tinyweb/example/GreetingRenderingStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/java/com/mblinn/oo/tinyweb/example/GreetingRenderingStrategy.java -------------------------------------------------------------------------------- /ClojureExamples/src/java/com/mblinn/oo/tinyweb/example/LoggingFilter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/java/com/mblinn/oo/tinyweb/example/LoggingFilter.java -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/functional/ccf/ccf_examples.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/functional/ccf/ccf_examples.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/functional/coo/examples.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/functional/coo/examples.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/functional/di/examples.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/functional/di/examples.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/functional/dsl/examples.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/functional/dsl/examples.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/functional/fb/composition_examples.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/functional/fb/composition_examples.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/functional/fb/discount_builder.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/functional/fb/discount_builder.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/functional/fb/partial_examples.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/functional/fb/partial_examples.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/functional/fb/selector.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/functional/fb/selector.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/functional/fm/examples.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/functional/fm/examples.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/functional/ls/examples.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/functional/ls/examples.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/functional/memoization/examples.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/functional/memoization/examples.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/functional/mfr/discount.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/functional/mfr/discount.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/functional/mr/phases.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/functional/mr/phases.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/functional/tr/names.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/functional/tr/names.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/oo/command/cash_register.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/oo/command/cash_register.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/oo/decorator/examples.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/oo/decorator/examples.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/oo/iterator/higher_order_functions.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/oo/iterator/higher_order_functions.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/oo/iterator/lambda_bar_and_grille.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/oo/iterator/lambda_bar_and_grille.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/oo/javabean/catsanddogslivingtogether.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/oo/javabean/catsanddogslivingtogether.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/oo/javabean/person.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/oo/javabean/person.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/oo/javabean/sidebar.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/oo/javabean/sidebar.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/oo/nullobject/examples.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/oo/nullobject/examples.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/oo/strategy/people_example.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/oo/strategy/people_example.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/oo/tinyweb/RenderingException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/oo/tinyweb/RenderingException.java -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/oo/tinyweb/core.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/oo/tinyweb/core.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/oo/tinyweb/example.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/oo/tinyweb/example.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/oo/tinyweb/intro.clj: -------------------------------------------------------------------------------- 1 | (ns mbfpp.oo.tinyweb.intro) 2 | 3 | (count [1 2 3 4]) 4 | 5 | (.length "Clojure") -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/oo/tinyweb/stepone.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/oo/tinyweb/stepone.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/oo/tinyweb/steptwo.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/oo/tinyweb/steptwo.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/oo/tm/grade_reporter.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/oo/tm/grade_reporter.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/oo/visitor/examples.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/oo/visitor/examples.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/rso/closure_comparison.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/rso/closure_comparison.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/rso/closure_example.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/rso/closure_example.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/rso/logging.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/rso/logging.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/rso/person.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/rso/person.clj -------------------------------------------------------------------------------- /ClojureExamples/src/mbfpp/rso/person_expanded.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/src/mbfpp/rso/person_expanded.clj -------------------------------------------------------------------------------- /ClojureExamples/test/mbfpp/test/functional/fb/composition_examples.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/test/mbfpp/test/functional/fb/composition_examples.clj -------------------------------------------------------------------------------- /ClojureExamples/test/mbfpp/test/functional/fb/discount_builder.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/test/mbfpp/test/functional/fb/discount_builder.clj -------------------------------------------------------------------------------- /ClojureExamples/test/mbfpp/test/functional/fb/partial_examples.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/test/mbfpp/test/functional/fb/partial_examples.clj -------------------------------------------------------------------------------- /ClojureExamples/test/mbfpp/test/functional/fb/selector.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/test/mbfpp/test/functional/fb/selector.clj -------------------------------------------------------------------------------- /ClojureExamples/test/mbfpp/test/functional/mfr/discount.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/test/mbfpp/test/functional/mfr/discount.clj -------------------------------------------------------------------------------- /ClojureExamples/test/mbfpp/test/functional/mr/phases.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/test/mbfpp/test/functional/mr/phases.clj -------------------------------------------------------------------------------- /ClojureExamples/test/mbfpp/test/functional/tr/names.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/test/mbfpp/test/functional/tr/names.clj -------------------------------------------------------------------------------- /ClojureExamples/test/mbfpp/test/oo/command/cash_register.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/test/mbfpp/test/oo/command/cash_register.clj -------------------------------------------------------------------------------- /ClojureExamples/test/mbfpp/test/oo/iterator/higher_order_functions.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/test/mbfpp/test/oo/iterator/higher_order_functions.clj -------------------------------------------------------------------------------- /ClojureExamples/test/mbfpp/test/oo/iterator/lambda_bar_and_grille.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/test/mbfpp/test/oo/iterator/lambda_bar_and_grille.clj -------------------------------------------------------------------------------- /ClojureExamples/test/mbfpp/test/oo/javabean/catsanddogslivingtogether.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/test/mbfpp/test/oo/javabean/catsanddogslivingtogether.clj -------------------------------------------------------------------------------- /ClojureExamples/test/mbfpp/test/oo/tinyweb/core.clj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ClojureExamples/test/mbfpp/test/oo/tinyweb/core.clj -------------------------------------------------------------------------------- /JavaExamples/build.sbt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/build.sbt -------------------------------------------------------------------------------- /JavaExamples/project/plugins.sbt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/project/plugins.sbt -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/ex/recursion/RecursionExample.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/ex/recursion/RecursionExample.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/ex/repeating/VowelFilter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/ex/repeating/VowelFilter.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/functional/tailrecursion/Sum.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/functional/tailrecursion/Sum.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/functional/coo/Examples.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/functional/coo/Examples.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/intro/FilterOdds.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/intro/FilterOdds.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/command/CashRegister.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/command/CashRegister.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/command/Command.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/command/Command.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/command/Purchase.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/command/Purchase.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/command/PurchaseInvoker.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/command/PurchaseInvoker.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/command/RegisterClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/command/RegisterClient.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/di/FavoritesService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/di/FavoritesService.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/di/MovieDao.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/di/MovieDao.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/di/MovieService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/di/MovieService.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/di/ex1/DecoratedMovie.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/di/ex1/DecoratedMovie.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/di/ex1/FavoriteVideosService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/di/ex1/FavoriteVideosService.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/di/ex1/FavoritesService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/di/ex1/FavoritesService.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/di/ex1/Movie.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/di/ex1/Movie.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/di/ex1/MovieDao.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/di/ex1/MovieDao.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/di/ex1/MovieService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/di/ex1/MovieService.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/di/ex1/VideoService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/di/ex1/VideoService.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/fi/ComplicatedNameComparator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/fi/ComplicatedNameComparator.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/fi/ComposedComparator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/fi/ComposedComparator.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/fi/Harness.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/fi/Harness.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/fi/Person.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/fi/Person.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/fi/PersonComplicatedSort.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/fi/PersonComplicatedSort.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/fi/PersonExpanded.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/fi/PersonExpanded.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/fi/PersonFirstNameSort.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/fi/PersonFirstNameSort.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/fi/PersonNaturalSort.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/fi/PersonNaturalSort.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/tm/FullGradeReporter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/tm/FullGradeReporter.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/tm/GradeReporterTemplate.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/tm/GradeReporterTemplate.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/mbfpp/oo/tm/PlusMinusGradeReporter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/mbfpp/oo/tm/PlusMinusGradeReporter.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/iterator/Address.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/iterator/Address.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/iterator/HigherOrderFunctions.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/iterator/HigherOrderFunctions.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/iterator/Person.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/iterator/Person.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/iterator/TheLambdaBarAndGrille.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/iterator/TheLambdaBarAndGrille.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/javabean/ImmutablePerson.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/javabean/ImmutablePerson.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/javabean/Person.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/javabean/Person.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/javabean/PersonHarness.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/javabean/PersonHarness.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/nullobject/NullPerson.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/nullobject/NullPerson.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/nullobject/Person.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/nullobject/Person.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/nullobject/PersonExample.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/nullobject/PersonExample.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/nullobject/RealPerson.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/nullobject/RealPerson.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/strategy/FirstNameValidator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/strategy/FirstNameValidator.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/strategy/FullNameValidator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/strategy/FullNameValidator.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/strategy/Person.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/strategy/Person.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/strategy/PersonCollector.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/strategy/PersonCollector.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/strategy/PersonValidator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/strategy/PersonValidator.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/tinyweb/Controller.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/tinyweb/Controller.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/tinyweb/ControllerException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/tinyweb/ControllerException.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/tinyweb/Filter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/tinyweb/Filter.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/tinyweb/HttpRequest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/tinyweb/HttpRequest.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/tinyweb/HttpResponse.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/tinyweb/HttpResponse.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/tinyweb/RenderingException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/tinyweb/RenderingException.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/tinyweb/RenderingStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/tinyweb/RenderingStrategy.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/tinyweb/StrategyView.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/tinyweb/StrategyView.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/tinyweb/TemplateController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/tinyweb/TemplateController.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/tinyweb/TinyWeb.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/tinyweb/TinyWeb.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/tinyweb/View.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/tinyweb/View.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/tinyweb/example/ExampleHarness.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/tinyweb/example/ExampleHarness.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/tinyweb/example/GreetingController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/tinyweb/example/GreetingController.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/tinyweb/example/GreetingRenderingStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/tinyweb/example/GreetingRenderingStrategy.java -------------------------------------------------------------------------------- /JavaExamples/src/main/java/com/mblinn/oo/tinyweb/example/LoggingFilter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/main/java/com/mblinn/oo/tinyweb/example/LoggingFilter.java -------------------------------------------------------------------------------- /JavaExamples/src/test/java/com/mblinn/mbfpp/oo/fi/PersonExpandedTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/test/java/com/mblinn/mbfpp/oo/fi/PersonExpandedTest.java -------------------------------------------------------------------------------- /JavaExamples/src/test/java/com/mblinn/mbfpp/oo/tinyweb/CommandViewTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/test/java/com/mblinn/mbfpp/oo/tinyweb/CommandViewTest.java -------------------------------------------------------------------------------- /JavaExamples/src/test/java/com/mblinn/mbfpp/oo/tinyweb/HttpRequestResponseTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/test/java/com/mblinn/mbfpp/oo/tinyweb/HttpRequestResponseTest.java -------------------------------------------------------------------------------- /JavaExamples/src/test/java/com/mblinn/mbfpp/oo/tinyweb/ITestTinyweb.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/test/java/com/mblinn/mbfpp/oo/tinyweb/ITestTinyweb.java -------------------------------------------------------------------------------- /JavaExamples/src/test/java/com/mblinn/mbfpp/oo/tinyweb/TemplateControllerTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/test/java/com/mblinn/mbfpp/oo/tinyweb/TemplateControllerTest.java -------------------------------------------------------------------------------- /JavaExamples/src/test/java/com/mblinn/mbfpp/oo/tinyweb/stubs/AddDummyHeaderFilter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/test/java/com/mblinn/mbfpp/oo/tinyweb/stubs/AddDummyHeaderFilter.java -------------------------------------------------------------------------------- /JavaExamples/src/test/java/com/mblinn/mbfpp/oo/tinyweb/stubs/DummyController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/test/java/com/mblinn/mbfpp/oo/tinyweb/stubs/DummyController.java -------------------------------------------------------------------------------- /JavaExamples/src/test/java/com/mblinn/mbfpp/oo/tinyweb/stubs/DummyView.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/test/java/com/mblinn/mbfpp/oo/tinyweb/stubs/DummyView.java -------------------------------------------------------------------------------- /JavaExamples/src/test/java/com/mblinn/mbfpp/oo/tinyweb/stubs/DummyViewRenderer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/test/java/com/mblinn/mbfpp/oo/tinyweb/stubs/DummyViewRenderer.java -------------------------------------------------------------------------------- /JavaExamples/src/test/java/com/mblinn/mbfpp/oo/tinyweb/stubs/ExceptionalController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/test/java/com/mblinn/mbfpp/oo/tinyweb/stubs/ExceptionalController.java -------------------------------------------------------------------------------- /JavaExamples/src/test/java/com/mblinn/mbfpp/oo/tinyweb/stubs/ExceptionalView.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/test/java/com/mblinn/mbfpp/oo/tinyweb/stubs/ExceptionalView.java -------------------------------------------------------------------------------- /JavaExamples/src/test/java/com/mblinn/mbfpp/oo/tinyweb/stubs/ExceptionalViewRenderer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/test/java/com/mblinn/mbfpp/oo/tinyweb/stubs/ExceptionalViewRenderer.java -------------------------------------------------------------------------------- /JavaExamples/src/test/java/com/mblinn/oo/command/CashRegisterTests.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/test/java/com/mblinn/oo/command/CashRegisterTests.java -------------------------------------------------------------------------------- /JavaExamples/src/test/java/com/mblinn/oo/command/PurchaseInvokerTests.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/test/java/com/mblinn/oo/command/PurchaseInvokerTests.java -------------------------------------------------------------------------------- /JavaExamples/src/test/java/com/mblinn/oo/command/RecordingStubCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/test/java/com/mblinn/oo/command/RecordingStubCommand.java -------------------------------------------------------------------------------- /JavaExamples/src/test/java/com/mblinn/oo/iterator/HigherOrderFunctionsTests.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/test/java/com/mblinn/oo/iterator/HigherOrderFunctionsTests.java -------------------------------------------------------------------------------- /JavaExamples/src/test/java/com/mblinn/oo/strategy/DummyValidator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/test/java/com/mblinn/oo/strategy/DummyValidator.java -------------------------------------------------------------------------------- /JavaExamples/src/test/java/com/mblinn/oo/strategy/FirstNameValidatorTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/test/java/com/mblinn/oo/strategy/FirstNameValidatorTest.java -------------------------------------------------------------------------------- /JavaExamples/src/test/java/com/mblinn/oo/strategy/FullNameValidatorTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/test/java/com/mblinn/oo/strategy/FullNameValidatorTest.java -------------------------------------------------------------------------------- /JavaExamples/src/test/java/com/mblinn/oo/strategy/PersonCollectorTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/JavaExamples/src/test/java/com/mblinn/oo/strategy/PersonCollectorTest.java -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/README.md -------------------------------------------------------------------------------- /ScalaExamples/build.sbt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/build.sbt -------------------------------------------------------------------------------- /ScalaExamples/project/sbt-idea-shim.sbt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/project/sbt-idea-shim.sbt -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/ccf/Choose.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/ccf/Choose.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/coo/Examples.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/coo/Examples.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/dsl/Example.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/dsl/Example.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/fb/CompositionExamples.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/fb/CompositionExamples.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/fb/DiscountBuilder.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/fb/DiscountBuilder.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/fb/PartialExamples.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/fb/PartialExamples.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/fb/Selector.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/fb/Selector.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/fm/FocusedMutation.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/fm/FocusedMutation.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/ls/LazySequence.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/ls/LazySequence.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/memoization/Examples.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/memoization/Examples.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/mfr/Discount.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/mfr/Discount.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/mr/EvenOdd.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/mr/EvenOdd.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/mr/Phases.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/mr/Phases.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/tr/Names.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/functional/tr/Names.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/command/register/Register.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/command/register/Register.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/decorator/Examples.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/decorator/Examples.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/di/ex1/Services.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/di/ex1/Services.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/fi/PersonExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/fi/PersonExample.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/fi/PersonExpanded.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/fi/PersonExpanded.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/fi/personexpanded/ClosureExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/fi/personexpanded/ClosureExample.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/iterator/HigherOrderFunctions.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/iterator/HigherOrderFunctions.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/iterator/TheLambdaBarAndGrille.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/iterator/TheLambdaBarAndGrille.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/javabean/Person.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/javabean/Person.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/nullobject/Examples.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/nullobject/Examples.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/strategy/PeopleExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/strategy/PeopleExample.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/tinyweb/example/Example.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/tinyweb/example/Example.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/tinyweb/stepfour/Controller.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/tinyweb/stepfour/Controller.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/tinyweb/stepfour/HttpData.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/tinyweb/stepfour/HttpData.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/tinyweb/stepfour/Tinyweb.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/tinyweb/stepfour/Tinyweb.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/tinyweb/stepfour/View.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/tinyweb/stepfour/View.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/tinyweb/stepone/View.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/tinyweb/stepone/View.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/tinyweb/stepthree/Controller.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/tinyweb/stepthree/Controller.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/tinyweb/stepthree/HttpData.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/tinyweb/stepthree/HttpData.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/tinyweb/stepthree/View.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/tinyweb/stepthree/View.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/tinyweb/steptwo/Controller.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/tinyweb/steptwo/Controller.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/tinyweb/steptwo/View.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/tinyweb/steptwo/View.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/tm/GradeReporter.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/tm/GradeReporter.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/visitor/Examples.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/visitor/Examples.scala -------------------------------------------------------------------------------- /ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/visitor/Shapes.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/main/scala/com/mblinn/mbfpp/oo/visitor/Shapes.scala -------------------------------------------------------------------------------- /ScalaExamples/src/test/scala/com/mblinn/mbfpp/functional/ccf/ChooseSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/test/scala/com/mblinn/mbfpp/functional/ccf/ChooseSpec.scala -------------------------------------------------------------------------------- /ScalaExamples/src/test/scala/com/mblinn/mbfpp/functional/fb/DiscountBuilder.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/test/scala/com/mblinn/mbfpp/functional/fb/DiscountBuilder.scala -------------------------------------------------------------------------------- /ScalaExamples/src/test/scala/com/mblinn/mbfpp/functional/fb/Selector.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/test/scala/com/mblinn/mbfpp/functional/fb/Selector.scala -------------------------------------------------------------------------------- /ScalaExamples/src/test/scala/com/mblinn/mbfpp/functional/mfr/DiscountSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/test/scala/com/mblinn/mbfpp/functional/mfr/DiscountSpec.scala -------------------------------------------------------------------------------- /ScalaExamples/src/test/scala/com/mblinn/mbfpp/functional/mr/EvenOddSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/test/scala/com/mblinn/mbfpp/functional/mr/EvenOddSpec.scala -------------------------------------------------------------------------------- /ScalaExamples/src/test/scala/com/mblinn/mbfpp/functional/mr/PhasesSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/test/scala/com/mblinn/mbfpp/functional/mr/PhasesSpec.scala -------------------------------------------------------------------------------- /ScalaExamples/src/test/scala/com/mblinn/mbfpp/functional/strategy/PeopleExampleSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/test/scala/com/mblinn/mbfpp/functional/strategy/PeopleExampleSpec.scala -------------------------------------------------------------------------------- /ScalaExamples/src/test/scala/com/mblinn/mbfpp/functional/tr/NamesSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/test/scala/com/mblinn/mbfpp/functional/tr/NamesSpec.scala -------------------------------------------------------------------------------- /ScalaExamples/src/test/scala/com/mblinn/mbfpp/oo/fi/PersonExampleSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/test/scala/com/mblinn/mbfpp/oo/fi/PersonExampleSpec.scala -------------------------------------------------------------------------------- /ScalaExamples/src/test/scala/com/mblinn/mbfpp/oo/iterator/HigherOrderFunctions.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/test/scala/com/mblinn/mbfpp/oo/iterator/HigherOrderFunctions.scala -------------------------------------------------------------------------------- /ScalaExamples/src/test/scala/com/mblinn/mbfpp/oo/iterator/LambdaBarAndGrille.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/ScalaExamples/src/test/scala/com/mblinn/mbfpp/oo/iterator/LambdaBarAndGrille.scala -------------------------------------------------------------------------------- /project/sbt-idea-shim.sbt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/atomovski/functional-programming-patterns/HEAD/project/sbt-idea-shim.sbt --------------------------------------------------------------------------------