0:00 / 0:00
HOPE 2021 - Representing Monads with Capabilities
ACM SIGPLAN
11K subscribers • 61 videos on Hallway
- Recommended by 1 person: 1 in engineering communities.
Advanced. Deep dive for people who know the field.
1.5K views5 years ago1 recommendation
Programming languagesComputer scienceFunctional programmingComputation and complexityLanguage design and type systems
An academic presentation on representing monads using capabilities to simplify effect handling in programming languages.
icfp21.sigplan.org/details/hope-2021-papers/11/Representing-…Why it's here
1 person recommends thisu/Il_totorein r/scala • Mentions
Iron v1.2.0 is out | Happy new year
This is a post introducing the new changes of Iron v1.2.0.
# What is Iron ?
Iron is a type constraints (or type refinement) library for Scala 3. It uses Dotty's inline and opaque types to evaluate constraints at compile-time.
Here is a simple example:
```scala
def log(x: Double > 0d): RefinedDouble = x.map(Math.log)
log(-1d) //Compile-time error
```
# Features of 1.2.0
Release 1.2.0 brings two key features: an imperative-styled DSL and constraints relations/consequences.
## Imperative DSL
Iron brings a new imperative-styled DSL directly inspired by Martin Odersky's Representing Monad with Capabilities (HOPE 2021).
Here is the "imperative" for…