YouTube link: https://www.youtube.com/watch?v=atE_uKi-8so
Your hosts: Josh Suereth, Dick Wall, Heather Miller, Seth Tisue.
Join us during (and between) episodes for web-based Scalawags chat on Gitter.
- we're in beautiful, scenic Amsterdam for Scala Days, in a hotel room with the curtains drawn and the camera facing a blank wall
- it's the first day of Scala Days. so far we've only heard Martin's keynote, not any other talks
- similar to Scala Days SF keynote
- heavy coverage of TASTY (Typed Abstract Syntax Trees -Yserialized)
- basic idea: JARs retain compiled Scala code in intermediate form (not only the bytecode), to permit on-the-fly rewriting and/or code generation. Scala 2 and Dotty could both target it
- macro definitions could run using a TASTY interpreter; then you wouldn't need two-stage compilation
- Scala.js got a shout-out from Martin
- the rumors are: blackbox macros are in, whitebox macros are out? (blackbox macros being "macros that faithfully follow their type signatures")
- blackbox macros are desirable because they don't defeat language tooling
- physical violence almost breaks out between Josh and Dick over kitten vs. puppy preferences
- Dick is skeptical, but "I'm an engineer, not a marketer"
- Josh was skeptical at first; read his blog post, http://www.typesafe.com/blog/whats-in-a-name-typesafe-public-renaming-update-week-3
- Josh: "typesafe" means something to developers; to others, it isn't just meaningless, they can't even remember it
- Heather: it worked for Google
- Seth: oh hey by the way I work at Typesafe now (on the Scala team)
- Heather hotly denies membership in the Borg
- Typeface, oops Typesafe, and EPFL's relationship to Scala is discussed
- Seth: "When I hear the new name, I'll have an opinion then"
- Josh: "as long as it's a cool name"
- a round of astoundingly terrible name suggestions are made
- listeners think we're drunk. but define "drunk"
- what is "Scala" anyway, to non-technical people? and how to explain why we like it so much?
- Dick: everyone's heard of Java, so tell them it's the new Java
- Java, that thing Windows wants me to update all the time
- Dick: tell them one or two actual problem domain you've worked on, e.g. genetics
- Josh: tell them Walmart, Twitter, LinkedIn
- Heather: "It's websites."
- Heather hotly denies doing websites
- Seth: but why do we like Scala so much?
- Heather: "Good design."
- Dick: "Power and flexibility."
- Josh: "Freedom without chaos."
- Seth: "It's more fun, but also safer."
- PSA from Dick: new SLIP (Scala Library Improvement Process) is starting up. regular monthly meetings broadcast live. announcements, links, discussion at https://gitter.im/scala/slip
- Josh predicts this process will replace the SIP process
- Dick: we stole it from Rust
- Eugene Yokota has a new blog post series on Cats, similar to his well-known blog post series about Scalaz
- mandubian is blogging about Cats and free monads
- newly open sourced: Knobs, from the OnCue team at Verizon (Runar Bjarnason, Tim Perrett, et al). "A reasonable configuration library for Scala". Handles notifications to configuration changes, conveyed through Scalaz tasks
- from the same team, a logging library called Journal, based on SLF4J
- Josh: logging should be structured events, not strings. strings bore Josh.
- Shapeless 2.2 is out
- the automatic-derivation-of-typeclass-instances stuff that Miles Sabin presented at Scala Days SF, and discussed last episode, is in it
- we didn't mention it in the podcast, but it now officially supports Scala.js
- https://github.com/milessabin/shapeless/wiki/Release-notes:-shapeless-2.2.0
- Play 2.4 is out, with dependency injection replacing globals. behind the scenes it's Guice, but client code can interact with it in different modes
- Seth: Java annotations get out of hand and take over some styles of code, does anybody do that in Scala?
- Josh: not until we get annotation macros, then look out!
- Dick: annotations, Java's "get out of jail free" card
- Josh: "annotation macros are compile-time AspectJ"
- Heather sees Josh's dynamic-loading and dynamic-rewriting future and shivers
- Seth comes out swinging for annotation macros. it's wrong that something like case classes should be baked into the compiler
- Heather: well hmm, we did use annotation macros in a pickling prototype once
- new release of Doobie, Rob Norris (aka tpolecat)'s monadic database library
- all database API's are monadic now, monads won
- another day, another library by Haoyi Li:
FastParse, fast parser combinators. now with more
mutant cat eyebrows
- claimed to be faster than stdlib parser combinators, easier to use than Parboiled 2
- Seth wants to know if Haoyi's FastParse-based Scala grammar is the basis for the syntax highlighting in scalajs-fiddle and/or Ammonite? maybe not
- http://lihaoyi.github.io/fastparse/
- Bill Venners won the 2015 Phil Bagwell Award
- jazz hands