This talk will explore the use of Scala as a scripting language, replacing the Bash and Python scripts common throughout the industry.

This talk will explore the use of Scala as a scripting language, replacing the Bash and Python scripts common throughout the industry. We will walk through live-coded demonstrations of how the JVM's benefits of performance, compile-time safety, and vast library ecosystem are advantages over traditional script platforms, but also how language verbosity, build tool overhead, and lack of convenient libraries hampers the efforts. Lastly we will demonstrate how script-focused tooling is able to smooth over some of those issues, simplifying build configuration and providing suitable libraries to make the JVM truly a world-class scripting environment as robust as any scripting language out there.
This will be a live coding demonstration of Scala's newest feature set: capture checking.
Writing client-facing APIs involves mundane tasks, whether it be REST, GraphQL, or gRPC. In this talk, I will pick two repetitive tasks during API development and demonstrate how we can utilize Scala to automate the most boring parts.
Do you like it when compiler generates the boring code for you? Fast, mundane, boring-but-error-prone code? Do you need to implement such a code generator yourself? Have you found out that Shapeless/Mirrors bend your brain a bit too much?
In this talk, we will walk through a concrete example of a boilerplate-heavy domain. By replacing common Scala 2 workarounds with Opaque Types, Extension Methods, Enums, and Union Types, we will demonstrate how to achieve a strictly typed, decoupled architecture without the noise.
Scala Native can interact with C code and libraries, greatly expanding the library ecosystem beyond pure Scala offerings. Let's see the low level and high level tools that make it possible, talk through challenges of encoding various C concepts in Scala, and demonstrate what popular C libraries look like when used alongside idiomatic Scala code.