Mojo🔥: a deep dive on ownership with Chris Lattner

Описание к видео Mojo🔥: a deep dive on ownership with Chris Lattner

Learn everything you need to know about ownership in Mojo, a deep dive with Modular CEO Chris Lattner

If you have any questions make sure to join our friendly discord community: https://modul.ar/discord

If you're ready to get started with Mojo, check out the programming manual and installation guide: https://modul.ar/mojo-get-started

0:00 Mojo🔥: a deep dive on ownership with Chris Lattner
00:00 Introduction
00:55 Define Terms
01:11 Garbage Collectors
01:23 Copies
01:39 Goal of ownership model
02:15 Learning from Rust
03:26 How the compiler works
04:18 Type Checker
06:13 Context Insensitive Type Checker
07:20 No traditional AST
08:07 Ownership
08:20 RValue: an owned value
10:35 LValues: assignable and mutable
14:04 BValues: Borrowed Values
16:10 Ownership conversions
16:38 BValue Conversions
17:25 RValue Conversions
18:58 LValue Conversions
20:42 Examples of RValues
21:10 Memory and SSA Types
21:59 Ownership Transfer with ^
22:56 std::move from C++
24:39 Marking variables as uninitialized after transfer with ^
27:51 Data flow checker with argument conventions
31:49 Destructor Insertion
34:40 ASAP Destruction
37:19 Avoiding allocations optimization
38:00 Copy to move optimizations
40:13 @value decorator
41:00 Where does destructor run on borrowed argument
41:46 Copy to move optimization clarification
42:12 Is liveness representable in debug info?
42:27 How ASAP destruction works with loops
42:48 Being simple and optimal
44:14 Allowing more advanced use cases and reducing copies
45:04 Field sensitive and composes with member variables
46:27 Dangling pointers
47:51 What safe references will fix

Комментарии

Информация по комментариям в разработке