A free, once-weekly Scala news flash. Easy to unsubscribe. Goes out every Thursday 8:30 PST.
November 26th, 2015, ISSUE 94


Macro paradise 2.1.0-final

A release that accumulates multiple stability and tool compatibility improvements.
Eugene Burmako (@xeno_by)
Generalized type constraints in Scala (without a PhD)

Did you know about the mysterious <:< "sad-with-a-hat" operator?
Erik Bruchez (@ebruchez)
Arrows, Monads and Kleisli - part II

Second part of the series, about taking care of side-effects, conditional execution and mixing different monads in a single ‘pipeline’.
Marcin Rzeźnicki
Scala Plugin EAP Speeds Up Coding Assistance

A nice boost to code completion and inspections.
JetBrains (@jetbrains)
5 Scala Puzzlers That Will Make Your Brain Hurt

We all love good brain roller from time to time, so let's have one with Scala.
Alex Zhitnitsky (@tkfxin)
Minutes from Nov 2015 SIP/SLIP Meeting

A fruitful discussion resulting in quite a bunch of interesting notes.
Hamish Dickson
Sliding through collections

Often overlooked, the .sliding() function on Scala collection may really come in handy.
Alex Salguero (@hasumedic)
Scala.js has a new website

Enjoy your explorations through a fresh look.
What should go into the Scala Standard Library

A hot discussion around Martin's new proposal.


Event Sourcing/CQRS with Akka Persistence and Eventuate

A detailed tour on differences and applications of two different Event Sourcing solutions.
Martin Krasser (@mrt1nz)


Scalar 2016: Call For Proposals

Propose a speaker/subject, let us know what you would like to experience.
SoftwareMill (@softwaremill)


Monocle 1.2.0-M2

Many new additions to this rich Scala optics library.
Monocle Contributors
Ammonite 0.5.0

Would you like to save/load to any state in REPL? Now you can!
Li Haoyi (@li_haoyi)


Scala Times stickers?

Want one? Let us know or tweet @scalatimes.
  1. Scala Times Issue #94

    Macro paradise 2.1.0-final. Generalized type constraints in Scala (without a PhD). Arrows, Monads and Kleisli - part II. Scala Plugin EAP Speeds Up Coding Assistance. 5 Scala Puzzlers That Will Make Your Brain Hurt.

  2. Scala Times Issue #93

    Akka HTTP Session 0.2.0. My Five Years of Scala - No Fun Allowed. 5 things we hate about Spark. Scala will be a beginner programming language at LTH. Stream Processing with Apache Flink.

  3. Scala Times Issue #92

    The mystics are coming out. Default type parameters with implicits in Scala. Scala is not a mythical monster! Using scala with Spring boot. Data Science for Losers, Part 3 – Scala & Apache Spark. Writing Monads in Scala with Spark-Notebook.

  4. Scala Times Issue #91

    Customizable gradual polymorphic effects for Scala. Solving problems in a generic way using Shapeless. Akka Cluster 2.4. Custom data validation rules with Shapeless tags. IntelliJ IDEA and Scala plugin 2.0.0.

  5. Scala Times Issue #90

    The Dotty compiler for Scala bootstraps. SBT with an external build tool. A comparison of Akka Persistence with Eventuate - Martin Krasser's Blog. Event sourcing + free monads = free sourcing?. From F to DOT: Type Soundness Proofs with Definitional Interpreters.

  6. Scala Times Issue #89

    Reification, Kleislis, and Stream Libraries. Scala and Spark Notebook: The Next Generation Data Science Toolkit. Typeclass in Scala and Haskell. Real-Time Stream Processing at InMobi - Part 4. Scala Up North 2015 videos.

  7. Scala Times Issue #88

    Akka Typed: First steps with typed actors in Scala. Fuzzing Raft for Fun and Publication. Collections Redesign Proposal. Akka without the Actors. Samsung wants to help IoT speak a common language.

  8. Scala Times Issue #86

    TIOBE Index for October 2015. Spark Dataframes transformations with state Monad. Wanted: Strawman proposals for new collections architecture (Dotty). Free monads - what? and why?. Make Them Suffer / Actors Internal State.

  9. Scala Times Issue #86

    Learn implicits: Type classes. Reactive Monitoring Beta Progam. Better Spray metrics with Kamon. Scala Development with IntelliJ IDEA. Spark Streaming: Tricky Parts.

  10. Scala Times Issue #85

    Redis Plugin for Akka Persistence. Introducing a new MongoDB Scala Driver. Scala in North Lakes. Scala in the browser. Getting Started with Scala.js. Beyond Scala Lens.

  11. Scala Times Issue #84

    Reactive Kafka with Scala. Introduction to Eventuate. The Aux Pattern. Open Sourcing Task Library For Queueing Reliable Task Execution. Entry-level, synchronous & transactional event sourcing.

  12. Scala Times Issue #83

    Akka Streams and Apache Camel. Monifu vs Akka Streams. Understanding Akka's Recommended Practice for Actor Creation in Scala. FS2: The Official Guide. A Hands-On Introduction to ScalaTest.

  13. Scala Times Issue #82

    A Journey into Reactive Streams. Lens in Scala. How To Set Request Throttling on a Dispatch HTTP Client. How Flink handles backpressure. Dockerizing you Scala apps with sbt-docker.

  14. Scala Times Issue #81

    AWS Lambda Scala example project released. What's new in Reactive Kafka 0.8.0?. Easy Scalability with Akka. How to make an idiomatic Javascript library with Scala.js. What is our "Why" and purpose for existing? Public renaming update.

  15. Scala Times Issue #80

    Introduction to Akka Actors. The basics of Lenses in Scala. Connecting dots with Akka Streams. How Autodesk Implemented Scalable Eventing Overs Mesos. Akka Data Stream Processing.

  16. Scala Times Issue #79

    Diving into Spark Streaming's Execution Model. Variance in Scala ("Luke, he is your father too"). Elastically Adding and Removing Nodes Using Akka cluster. Using shapeless HLists with Slick 3. Quasar and Akka - a Comparison.

  17. Scala Times Issue #78

    Category Theory jargon cheat sheet. Learn implicits: views as class extensions. Zero to deep Learning with Scala. Encoding of GADTs in Scala. Scala Dissection: Basic Types.

  18. Scala Times Issue #77

    A Map of Akka. SIP/SLIP Summary, July 27th 2015. Testing without mocking in Scala. Websockets Server with akka-http. Functional patterns for Scala beginners.

  19. Scala Times Issue #76

    Top 100 Scala Libraries in 2015. Some fun with akka-streams and akka-http. The need for Acknowledgement in Streams. Use akka-stream BidiFlows with an IRC client. Scala Up North CFP ends soon!.

  20. Scala Times Issue #75

    Akka Streams & Http 1.0 Released!. A Quick Overview of Slick 3.0. Partially Applied Functions in Scala. Client-side sessions for akka-http. Functional Error Accumulation in Scala.

  21. Scala Times Issue #74

    Bootzooka, Summer 2015. Throttling Instantiations of Scala Futures. Play @ Delft Software Architecture course. Cancelling work in flight. Scala Doesn't Have To Be Complicated.

  22. Scala Times Issue #73

    Learn to cook pancakes, the Akka way. When & why to use Supler for web forms. Akka Distributed Data. Why we chose Scala. Open Source Async MongoDB driver for Scala & Play Framework.

  23. Scala Times Issue #72

    Scala 2.11.7 is now available!. Inventory App Part 1. Easy Performance Wins With Scalaz. How to create XML models in Scala? - scalaxb. Herding Cats - days 9 and 10.

  24. Scala Times Issue #71

    Scala Days Amsterdam 2015. Event-sourced game implementation example: Part 2/3. An Introduction to Cats. Why we picked AKKA cluster as our microservice framework. Peeking Under The Covers in Scala.

  25. Scala Times Issue #70

    Spark monitoring: How to Handle 10B Requests a Day. Escape to an Inner Object. One Up: Bulding machine learning pipelines with Mario. Scala.js: first impressions. Slick-based (Scala) Flyway Migrations.

  26. Scala Times Issue #69

    Typechecking SQL in Slick and doobie. 2.2 Billion Clicks And Beyond. Reactive Streams 1.0.0 interview. Backpressure in action with websockets and akka-streams. A quick look at Scalameta.

  27. Scala Times Issue #68

    Comparing akka-stream and scalaz-stream with code examples. Scala Case Classes in Depth. The Good Parts: Reflections after 1.5 years of Akka. New in Bootzooka - Towards the Reactive. SpinGo <3 Scala.

  28. Scala Times Issue #67

    Huffington Post's new Publishing Platform On Typesafe. ConductR 1.0 released. Ad Hoc Polymorphism in Scala With Type Classes. How one company improved developer productivity by 700% with reactive programming. The Honeymoon Is Over.

  29. Scala Times Issue #66

    Returning the "Current" Type in Scala. Slick 3: Reactive Streams for Asynchronous Database Access in Scala. Herding Cats - day 4. Play framework security with Silhouette. The Bet With Typesafe That Got Me Into Building Akka.

  30. Scala Times Issue #65

    Overview of Akka Typed. Path dependent types - modeling algebraic structures has never been easier. Returning the "Current" Type in Scala.

  31. Scala Times Issue #64

    Monadic IO: Laziness Makes You Free. Introduction to Akka Streams. ConductR: Typesafe's move in lightweight containers and age of distributed clusters.. Practices for Distributed Scala Teams. Akka Streams & HTTP 1.0-RC1.

  32. Scala Times Issue #63

    Free Monads Are Simple. Typesafe ConductR from a developer's perspective. Gems of SBT. Scala vs. Node.js as a RESTful backend server. Developing Play Applications using Gradle.

  33. Scala Times Issue #62

    A Skeptic's Guide to Scalaz' Gateway Drugs. Using AutoPlugin in Sbt for Common Settings Across Projects. Ternary Operator in Scala. Deep Dive into Spark SQL's Catalyst Optimizer. Scala Days 2015 videos.

  34. Scala Times Issue #61

    MacWire 1.0 is here!. Category theory patterns in Scala. Retrying HTTP Requests in Scala. Reactive Postgres with Play Framework & ScalikeJDBC. Designing a Purely Functional Data Structure.

  35. Scala Times Issue #60

    Case classes to and from tuples. New technologies for the new LinkedIn home page. How to ... in Scala. Functional Validation in Scala. EmojR - a Reactive Emoji as a Service platform.

  36. Scala Times Issue #59

    Async Goes Mainstream: 7 Reactive Programming Tools You MUST Know. Introduction to scalaz-stream. Pickling Case Classes to Memcached with Scala. Concurrency made easy with Scala and Akka. Dead Code Rising.

  37. Scala Times Issue #58

    3 simple reasons why you need to learn Scala. Supler update: 0.3.0 release. Quicklens: traversing options and lists. Scala Collections tips and tricks. RxLift: Reactive Web Components with LiftWeb and RxScala.

  38. Scala Times Issue #57

    Eight hot technologies that were built in Scala. Sbt - A task engine. A companion booklet to "Functional Programming in Scala". Rúnar Óli Bjarnason. Scala for Machine Learning: A Review.

  39. Scala Times Issue #56

    Analyzing #TheDress with Akka Streams. Quicklens: Modify deeply nested case class fields. Transitioning To Scala. 6 months with Slick. Implementing the Reactive Manifesto with Akka.

  40. Scala Times Issue #55

    Zero-overhead Recursive ADT coproducts. Designing Fail-Fast Error Handling. Typesafe Activator 1.3.0. Why did we use Scala as our main backend language?. Scala Macros - Annotate your case classes.

  41. Scala Times Issue #54

    Moving from Java to Scala. Spark may be hotter than Hadoop, but it still has issues. Abstract algebraic data types. Error handling without throwing your hands up. Implementing operation-based CRDTs in Scala.

  42. Scala Times Issue #53

  43. Scala Times Issue #52

    DI in Akka. Akka HTTP microservice example. Visualizing Scala code style. Scala in large scale systems (part 1). Kafka @ Yahoo.

  44. Scala Times Issue #51

    Filtering Akka streams by elapsed time. Scala, Futures and "Lazy" Vals. Lift: was that a "tap"?. The rough experience with Slick. Wisp is Scala plotting.

  45. Scala Times Issue #50

    A gentle introduction to Akka Streams. Scala @ Paypal: Cascade. How is it like to use Akka in production?. MacWire 0.8.0: towards 1.0, tagging, anonymous functions support. Scalar C4P is open!.

  46. Scala Times Issue #49

    Scala 2.11.5 is released!. Purely functional #1: remotely. Purely functional #2: stoop. Scala data pipelines for music recommendations. Simulating a financial exchange in Scala.

  47. Scala Times Issue #48

    My journey away from Play Framework... and back again. Some Quick Tips for Using Scala Futures. 90 Days of Scala. Creating Reactive Streams components on Akka Streams. 3 approaches to Scala code generation.

  48. Scala Times Issue #47

    How and Why is Scala Used in Aerospace Industry?. Reactive Streams 1.0.0.RC1 Released. ScalaZ - Getting to grips with the Free Monad. Trending Scala Repositories Today.

  49. Scala Times Issue #46

    Akka Streams & HTTP 1.0 MILESTONE 2. The Cake Is A Lie. Akka Roadmap Update Dec 2014. Spark Release 1.2.0. Spray & Akka HTTP (73min).

  50. Scala Times Issue #45

    Supler 0.1.0: complex forms made easier. Scaling Akka Cluster. Akka Cluster API Routing. Configuring SBT to use 1Password. Scala: the language of agility?.

  51. Scala Times Issue #44

    An example of functional design. Java 8 vs Scala. The Difference in Approaches and Mutual Innovations. A farewell note to a programming language. Programming changes the way you think. Scala eXchange 2014 slides.

  52. Scala Times Issue #43

    Design Principles behind Akka Streams. Scala Macros - State of the meta, fall 2014. Type-safe vector addition with Dependent Types. (Oldie) Akka cluster 1. (Oldie) Traits: How Scala Tames Multiple Inheritance.

  53. Scala Times Issue #42

    Binding Futures in Lift 2. OO vs FP. Scala OOP Galore. Hands-on Scala.js (humongous size). ReactiveMongo with Akka, Scala and websockets.

  54. Scala Times Issue #41

    Debugging Scala compiler magic. Scala tips: Improving the imperfect pt.1 . Codebrag gone free and open source. Coding on Twitter. Code Examples for Programming in Scala.

  55. Scala Times Issue #40

    Renewed Reactive and Scala Forks: Dispatches from Typesafe. Akka 2.3.7 Maintenance Release. Free development resources search. Sorting on multiple fields and Tuples. Init.d and Start Scripts for Scala/Java Server Apps.

  56. Scala Times Issue #39

    Clustering reactmq with akka-cluster. Understanding Spray Client Timeout Settings. Is Scala and influence on Swift's design?. Scala 2.11.4 is now available!. JSON Parsing in Scala.

  57. Scala Times Issue #38

    Type-safe transducers in Clojure. And Scala. And Haskell.. Scaling Gilt: from Monolithic Ruby Application to Distributed Scala Micro-Services Architecture. New and upcoming Finagle examples. Trending Scala Repositories Today.

  58. Scala Times Issue #37

    Scalar Conference announced - 11.04.2015, Warsaw, Poland. Scala Best Practices. Three Reasons a Data Engineer Should Learn Scala. My favorite way of injecting dependencies in Scala. Java 8 adoption rate higher than expected.

  59. Scala Times Issue #36

    Scala: the Case for Correctness. Manipulating Data with Framian. Startup (on Spark) Crunches 100 TB/23 min. Better equality for Scala. The problematic culture of "Worse is Better".

  60. Scala Times Issue #35

    Scala - the good, the bad and the very ugly. Why did we use Scala as our main backend language?. Coming from ORM to Slick. Is Scala slowly dying?. Life with Akka.io.

  61. Scala Times Issue #34

    Reproducing Elixir's |> in Scala. An Example of Functional Programming. Map reduce with Akka and Scala: The famous word count. Notes about Valhalla from a non-Java perspective. Trending Scala Repositories Today.

  62. Scala Times Issue #32

    Leveraging annotation macros to generate caching boilerplate in Scala. Framework-less Scala Dependency Injection Framework. Are Scala forks considered harmful?. 15-minute chat with lift-ng. Apache Spark and Scala.

  63. Scala Times Issue #32

    React Conference promo codes. The reactive manifesto. Scala Times Softies: Why sometimes I hate myself. Anatomy of a tail recursive function. No Magic: Regular Expressions.

  64. Scala Times Issue #31

    Span Conference promo codes - 20% off!. New agey interview at the grocery startup. Scala founder: Language due to 'fundamental rethink'. Maximize Your Server Throughput with Scala. Trending Scala Repositories Today.

  65. Scala Times Issue #30

    Scala.io promo codes!. Typelevel Scala and the future of the Scala ecosystem. Typesafe's Commitment to the Scala Ecosystem. Why Should I Learn Scala?. Akka Roadmap Update 2014.

  66. Scala Times Issue #29

    Scala eXchange, 8-9.12.2014, London - discount & call for papers. Scala: Why it should matter to you as a business owner?. Reactive Programming with Scala and Akka. Why Google should bring Scala to Android. Akka Streams at Elder Research: Q&A with Simeon Fitch.

  67. Scala Times Issue #28

    Scala Times at Scala.io (23-24.10.2014) - discount codes incoming. Programming language subreddits and their choice of words. George Orwell's six rules for Scala programmers. I was wrong when I advocated the use of Scala. A goroutine idiom for Java and Scala.

  68. Scala Times Issue #27

    Scalaz type class 101. Scala's Modular Roots. Types of 'map' function in Haskell, Scala and Clojure. Scalaz EphemeralStream Fills Quite A Canyon. Does Java 8's lambda capability make Scala obsolete?.

  69. Scala Times Issue #26

    Scala Times banners. Scala: Next Steps. Guide to Dependency Injection in Scala. Dumping my university's database of exam results. The Evolution of Scala.

  70. Scala Times #25: The best of Scala Times #1-24

    Coding Resiliently in Scala with Akka. What's Up With Paul Phillips?. Java and Scala: Former Competitors May Be BFFs Before Long. Learning Scalaz: nescala 2014. The Ultimate Guide to Getting Started With the Play Framework.

  71. Scala Times Issue #24

    MacWire 0.7: dynamically accessing the object graph. The Wonders of Programming. Understanding and Implementing Laziness . A Reactive 3D Game Engine in Scala. Apache Spark + Typesafe = BFF.

  72. Scala Times Issue #23

    Composing Dependent Futures. Making the Internet of Things Manageable. Elixir Tasks vs Scala Futures. Why or Why Aren't You Using Scala. Trending Scala Repositories Today.

  73. Scala Times Issue #22

    Java vs. Scala: Divided We Fall. Scala Days 2014 presentation videos . Advanced Reactive Programming with Scala & Akka. Trending Scala Repositories Today. Scala.js & Facebook's React.

  74. Scala Times Issue #21

    Scala 2.12 roadmap. Akka 2.3.4 released. Scala collections flowchart. Integrating Google Drive in Play Scala application with Google+ API. Trending Scala Repositories Today.

  75. Scala Times Issue #20

    Scala is faster than Java. Option.fold() considered unreadable. Pearson correlation with Scalding. Trending Scala Repositories Today. Clash of the Lambdas.

  76. Scala Times Issue #19

    REST Test - Exploring DSL in Scala. Macroid - Scala for Android. Scala.js - what has it become and how is it used?. Testing Stateful Systems with ScalaCheck. Manage Large Amounts of Data with Iteratee.

  77. Scala Times Issue #18

    Amdahl's law says nothing about blocking operations. Handle Every Event in Your Akka Application. Reactive Queue with Akka Reactive Streams. A Year of Functional Programming. Play All Day: Enterprise Web Development with Play and Scala.

  78. Scala Times Issue #17

    Swift is a lot like Scala. Swift vs Scala [.pdf]. The No-framework Scala Dependency Injection Framework. Handling services that require explicit shutdown in Scala . Trending Scala Repositories Today.

  79. Scala Times Issue #16

    New Scala Worksheets in IntelliJ IDEA. Scalaz "For the Rest of Us". Play All Day Webinar Series. 47% of Java Pros are interested in Scala. Inside Codebrag: Angular, Grunt, Scala, Slick and Code Reviews.

  80. Scala Times Issue #15

    Scala 2.11.1 (urgent hotfix). Introduction to Writing Tests with ScalaTest. Scala Testing Webcast. Types Construction in Scala. Scala Talks by Heather Miller.

  81. Scala Times Issue #13

    Play 2.3.0-RC1 released!. Why You Should Never Catch Throwable in Scala. Spray server in a Docker container. Scala for-comprehension with concurrently running futures. Obtaining Geolocation in Play using IP Address.

  82. Scala Times Issue #14

    Functional Discrete Optimization @ Coursera with Scala. CEP using Akka Streams. Functional Patterns in Domain Modeling. Scala - The Simple Parts. Building Scala at Scale .

  83. Scala Times Issue #12

    Reactive Scala Wrapper for Amazon SQS. Confessions of a Scala evangelist turned Ruby pragmatist. Reasons behind renaissance of functional programming languages. Scaling Down the Scala Compiler Dragon. Optimizing Static Asset Loading with Play.

  84. Scala Times Issue #11

    Scala 2.11.0 available!. Spray 1.3.1 for Scala 2.11.0 available!. How to handle multiple Scala versions. Left to right, top to bottom. GSOC: Even more macros.

  85. Scala Times Issue #10

    Akka Streams . A few hints about Scala sequences. What is Type Class and why should you care?. Welcome to Scala 2.11. The Dark Side of Scala.

  86. Scala Times Issue #9

    SBuild 0.7.5 released. Transitioning to Scala. Building Reactive Applications with Akka (in Scala). Unifying Functional and Object-Oriented Programming with Scala. Pythagoras Theorem in Scala?.

  87. Scala Times Issue #8

    Upcoming sbt features. Manning: Reactive Design Patterns. The end of ORM. Scala may not be right for you if.... Combinatorial Algorithms in Scala.

  88. Scala Times Issue #7

    Using Scala Will Make You Less Productive. Monoid morphisms, products and coproducts. Will Java 8 Kill Scala?. Scala 2.10.4 released. Slick 2.0.1 released.

  89. Scala Times Issue #6

    May Your Data Ever Be Coherent. Scala Through Katas: Reverse Polish Notation. Akka Persistence webinar. Automate deployment of Scala/Java services on Elastic Beanstalk with Codeship. Faster Cosine Similarity Between Two Dicuments With Scala&Lucene.

  90. Scala Times Issue #5

    Reconciling untyped actors with typeful programming. JFokus 2014 - Akka Made Our Day. The Ultimate Guide to Getting Started with Play. Building a Social Music Service using... well, everything we write about. Scala 2.11.0-RC1 is now available.

  91. Scala Times Issue #4

    NE Scala 2014 - Learning Scalaz. NE Scala 2014 - Macros vs Types. NE Scala 2014: An introduction to Scalaz-Stream. Scala/Akka Wikipedia Reader. 30 SBT plugins in 15 minutes.

  92. Scala Times Issue #3

    Chisel - the hardware corner. All work and no Play doesn't scale. Scala at Google Summer of Code?. Scala Tutorial Through Katas: The Bowling Game.

  93. Scala Times Issue #2

    How's Scala community fixing the issues found by Paul Phillips?. Slick 2.0 Webinar by Stefan Zeiger. Coursera's Scala . Scala Worksheet: instant . Scala.js, a Scala to Javascript compiler.

  94. Scala Times Issue #1

    Coding resiliently in Scala with Akka. Selling Scala to Technical Managers. Huffington Post's Scala Story. GitBucket - a GitHub clone powered by Scala. Skinny - a skinny Scala framework.

Got a tip? Send it in!
Follow us on Twitter.
Curated by SoftwareMill.
We are hiring.
And taking on projects.