#scala-3

[ follow ]
#type-classes

Cool new experiments in Type Classes

Scala 3 is now in the refinement phase, focusing on improving the details.
There are major changes proposed to the surface syntax of type classes in Scala 3 for better expressivity.

Scala 3 FAQ: How does 'derives' work? (Notes on type classes, derivation macros, and compile-time derivation)

The derives keyword in Scala 3 streamlines creation of type class instances, specifically enhancing JSON handling in libraries like ZIO JSON.

Cool new experiments in Type Classes

Scala 3 is now in the refinement phase, focusing on improving the details.
There are major changes proposed to the surface syntax of type classes in Scala 3 for better expressivity.

Scala 3 FAQ: How does 'derives' work? (Notes on type classes, derivation macros, and compile-time derivation)

The derives keyword in Scala 3 streamlines creation of type class instances, specifically enhancing JSON handling in libraries like ZIO JSON.
moretype-classes
#data-modeling

DATA MODELING IN SCALA 3

Data Modeling is essential for ensuring system blueprint clarity, data consistency, and effective stakeholder communication.

DATA MODELING IN SCALA 3

Data Modeling using ADTs such as Enumerations and Case classes in Scala 3 helps in creating clear, concise, and maintainable data models for applications.

DATA MODELING IN SCALA 3

Data Modeling is essential for ensuring system blueprint clarity, data consistency, and effective stakeholder communication.

DATA MODELING IN SCALA 3

Data Modeling using ADTs such as Enumerations and Case classes in Scala 3 helps in creating clear, concise, and maintainable data models for applications.
moredata-modeling
#programming

Scala 3 Video: Union Types

Scala 3 introduces union types, allowing functions to accept multiple specified types directly, enhancing clarity and flexibility in statically-typed programming.

Scala 3 Video: Term Inference with given and using

Scala 3 simplifies term inference using given and using keywords, enhancing clarity and usability over the previous implicit mechanism in Scala 2.

Scala 3 Video: Union Types

Scala 3 introduces union types, allowing functions to accept multiple specified types directly, enhancing clarity and flexibility in statically-typed programming.

Scala 3 Video: Term Inference with given and using

Scala 3 simplifies term inference using given and using keywords, enhancing clarity and usability over the previous implicit mechanism in Scala 2.
moreprogramming

A Scala 3 "Hello, world" Example | Video: Free Introduction to Scala 3 Course

Creating Scala 3 applications with scala-cli is simplified by annotating main methods with @main.
#syntax

Changes From Scala 2 To Scala 3

Scala 3 simplifies code structure with optional braces, enhanced syntax, and improved if expressions.

Scala 3 'while' loop syntax and examples

Scala 3 while loop syntax examples for one-liners and multiline statements.

Changes From Scala 2 To Scala 3

Scala 3 simplifies code structure with optional braces, enhanced syntax, and improved if expressions.

Scala 3 'while' loop syntax and examples

Scala 3 while loop syntax examples for one-liners and multiline statements.
moresyntax
#functional-programming

Scala Opaque Types (video)

Opaque types in Scala 3 restrict visibility to underlying representation, allowing concrete type implementations while hiding details from users.

ZIO 2: Processing ZIO command line arguments

Scala 3 and ZIO 2 example demonstrates processing command-line arguments in a ZIO 2 application.

Direct-style Effects Explained

Direct-style effects aim to provide the benefits of monads without using monads in programming languages.

Scala Opaque Types (video)

Opaque types in Scala 3 restrict visibility to underlying representation, allowing concrete type implementations while hiding details from users.

ZIO 2: Processing ZIO command line arguments

Scala 3 and ZIO 2 example demonstrates processing command-line arguments in a ZIO 2 application.

Direct-style Effects Explained

Direct-style effects aim to provide the benefits of monads without using monads in programming languages.
morefunctional-programming

A Scala 3 function that counts the number of vowels in the String it is given as input

Using Scala 3 Set as a function for counting vowels in a string.
#zio

A ZIO 2 collectAllPar example using Scala 3

ZIO collectAllPar method example with for expression.

ZIO 2: A ZIO.timeout interrupt example with ZIO.attempt

ZIO.timeout can be used in Scala 3 for adding a timeout to an operation, resulting in a None value if the timeout is triggered.

A ZIO 2 collectAllPar example using Scala 3

ZIO collectAllPar method example with for expression.

ZIO 2: A ZIO.timeout interrupt example with ZIO.attempt

ZIO.timeout can be used in Scala 3 for adding a timeout to an operation, resulting in a None value if the timeout is triggered.
morezio

Scala 3: Package objeccts are deprecated, how to create types in a top-level package and use them everywhere in your project

In Scala 3, package objects are deprecated, impacting code accessibility across sub-packages. A workaround is to define common types in a 'near' top-level package for import.

My free Scala and FP online video training courses

Ziverge sponsored and enabled free video training courses on Scala 3 without ads or paywalls.
#opaque-types

Scala 3 Opaque Types: When to use, examples, benefits

Opaque types in Scala 3 offer encapsulation, type safety, abstraction, and semantic clarity.
They help create new data types with controlled access to representation, suitable for scenarios needing clear interfaces and meaningful names.

Scala 3 opaque types: How to create meaningful type names

Use opaque types in Scala 3 to create meaningful type names for safer code.

Scala 3 Opaque Types: When to use, examples, benefits

Opaque types in Scala 3 offer encapsulation, type safety, abstraction, and semantic clarity.
They help create new data types with controlled access to representation, suitable for scenarios needing clear interfaces and meaningful names.

Scala 3 opaque types: How to create meaningful type names

Use opaque types in Scala 3 to create meaningful type names for safer code.
moreopaque-types

Scala: How do I perform pattern matching on strings and regular expressions in a match expression?

Pattern matching in Scala can be performed on regular expression strings in a match expression.
Regular expressions can be defined as a Regex type and used for pattern matching in Scala.

Scala 3 Roadmap for 2024 Published

Scala 3 team plans for 2024 detailed in blog post
Focus on improving build times and IDE support

Scala 3 Data Transformation Library: Automating Data Transformations with ducktape

Working with data transformations is essential but can be cumbersome and prone to errors.
Ducktape, a Scala 3 micro-library, simplifies data model conversions, freeing developers to focus on innovation.

The Algebra of Pretty Printing

ToyLang is a custom language with features such as integer literals, variable support, binary arithmetic operators, conditional statements, and nested scopes.
The article discusses the design of a pretty printer for ToyLang using Scala 3 and Abstract Syntax Trees (AST).

Seamless Integration: Step-by-Step Installation of Scala 3 on RHEL 9 Using Terminal

Scala 3 is the latest version of the Scala programming language, which offers several new features and improvements over its predecessor.

ZIO/ZLayer FAQ: How to use a Java Properties files with ZIO

Use hand-coded ZLayer solution for Java Properties in ZIO 2 and Scala 3.
#zio-http

Securing your APIs with Oauth 2.0

Authentication is crucial in client-server applications; Scala 3 with ZIO HTTP can be used for building secure systems with OAuth 2.0 using Okta for authentication.

Securing your APIs with Oauth 2.0

Building a client-server application in Scala 3 using ZIO HTTP for secure communication with OAuth 2.0 authentication via Okta.

Securing your APIs with Oauth 2.0

Authentication is crucial in client-server applications; Scala 3 with ZIO HTTP can be used for building secure systems with OAuth 2.0 using Okta for authentication.

Securing your APIs with Oauth 2.0

Building a client-server application in Scala 3 using ZIO HTTP for secure communication with OAuth 2.0 authentication via Okta.
morezio-http

Scala 3 Odyssey: Key Insights and Highlights

A comprehensive overview of Scala programming language and its ecosystem, covering introduction, toolchain, CLI, SBT, and development environment.

Learn Scala 3 The Fast Way!

Learn Scala 3 The Fast Way! focuses on helping beginners grasp Scala 3 concepts quickly and includes online exercises for better retention.

Our Talks from 2019

Diverse topics covered in 2019 talks: mentoring, teaching, ethics in tech, type class derivation changes in Scala 3.
[ Load more ]