Tag: memorysafety

Val: A Safe Language to Interoperate with C++ – Dimitri Racordon – CppCon 2022

  • Lobby
  • Tag Archives: memorysafety

https://cppcon.digital-medium.co.uk/tag/cppcon/">cppcon.org/
---

Val: a safe language to interoperate with C++ - Dimitri Racordon - CppCon 2022
https://github.com/CppCon/CppCon2022

Val is a cppcon.digital-medium.co.uk/tag/programming/">programming language based on two of the best ideas behind C++: generic cppcon.digital-medium.co.uk/tag/programming/">programming and first-class value semantics. Unlike C++, however, Val is a safe-by-default cppcon.digital-medium.co.uk/tag/programming/">programming language, meaning that many guarantees that are enforced by convention in C++ are proven by induction in Val.

Val follows strict mutable value semantics, which allows in-place mutation, including across function boundaries, but forbids pointers and references. Instead, objects are independent entities that can never be accessed mutably via different names. Val also checks generic definitions at declaration to ensure that algorithms never rely on unspecified properties of their inputs.

Nonetheless, if we look carefully, we realize that Val and C++ are actually very close. Both are zero-cost abstraction languages that fully acknowledge the physical constraints of computer architecture, yet manage to build efficient generic abstractions. Perhaps they could become friends so that, one day, developers can write fast-by-definition and safe-by-default Val code that seamlessly calls into C++, and vice-versa. Perhaps their relationship could even grow stronger, who knows?

This talk will refer to some of contents presented by Dave Abrahams in his talk titled: "Values: regularity, independence, projection, and the future of cppcon.digital-medium.co.uk/tag/programming/">programming". https://youtu.be/QthAU-t3PQ4
---

Dimitri Racordon

Dimitri is a researcher at Northeastern University, in the US.
He might a bit of an outsider at CppCon. He's never been a real software developer. He doesn't have clients or a product owner to satisfy so he can get away only writing proof of concepts. He has a Ph.D. in computer science, but only because he bribed his jury members with Swiss chocolate. He used to work on model checking for concurrent programs before getting into cppcon.digital-medium.co.uk/tag/programming/">programming language design. Now he writes formal proofs for a living and has yet to prove someone else reads them. He also likes coding very, very much.

Because he knows he's not so good at writing correct programs, though, Dimitri thought he'd better write cleverer compilers. The bar wasn't so high but the quest led him to interesting research questions. Eventually, he developed a true passion for type-based approaches to memory safety. Further, because he constantly falls into the traps of premature optimization, Dimitri believes that languages should offer transparent abstractions with predictable costs that free the user from thinking about performance all the time.

Dimitri likes generic cppcon.digital-medium.co.uk/tag/programming/">programming, because it looks like math. He also likes low-level cppcon.digital-medium.co.uk/tag/programming/">programming languages. Since he's not good enough to write C++ and thinks he's too cool for Rust, he decided to focus his research on yet another cppcon.digital-medium.co.uk/tag/programming/">programming language. He says he's "discovering" a core calculus to build a "safe by default" and "fast by definition" language that interoperate with C++.
---

Videos Filmed & Edited by Bash Films: http://www.BashFilms.com
YouTube Channel Managed by Digital Medium Ltd https://events.digital-medium.co.uk

#cppcon.digital-medium.co.uk/tag/cppcon/">cppcon #cppcon.digital-medium.co.uk/tag/programming/">programming #cpp

Filed under: UncategorizedTagged with: , , ,