Type systems for linearity and aliasing control hold great promise to address some of the most pressing challenges in programming languages and software engineering, including the static prevention of data races and safe manual memory management. Extending the type systems of existing languages is a challenge, however, preventing many recent advances from practical use. This talk reports on efforts attempting to integrate lightweight affine types and uniqueness into Scala. Experience shows that creative combinations of advanced features of Scala’s type system can reduce the integration effort. Furthermore, co-designing type systems and concurrency models is beneficial to achieve a flexible design.
Part of ISBN 9798400706349
QC 20240910