~/talk

Snek: A Python-Inspired Language for Tiny Embedded Computers

Talkat linux.conf.au 2020 · 2020-01-13..01-17· [embedded-and-hardware]
slides:none on file

A Python subset called Snek compiles to a small bytecode VM that runs in 32kB ROM and 2kB of RAM, targets ATmega328 boards and the classroom workflow, and passes a test suite to ensure Snek answers match CPython except for board I/O. Implementation highlights include NaN tagging to pack pointers and 32-bit floats into 32-bit values, an in-place compacting incremental GC that avoids double heaps, and a tiny parser generator lola that is about 1/10 the size of bison. LEGO robot demos and a Mu/SnekDE IDE show the system working for middle-school lessons.

AI-written summary · about

  1. 0:00Intro
  2. 1:30Lego Robotics Class
  3. 3:37My First Lego Computer
  4. 5:29Logo Code
  5. 9:31Arduino Code
  6. 11:59Fireworks
  7. 12:50Project Goals
  8. 18:44Snek Line Bug
  9. 22:56Snek Example
  10. 23:13Circuit Python Example
  11. 27:55Editing Snek with Mu
  12. 28:33Editing Snek with Snekde
  13. 29:33Language Implementations
  14. 31:37Snek Implementation
  15. 32:18Snek Values
  16. 35:11Snek Compiler
  17. 36:49Lola
  18. 37:35Snek VM
  19. 38:20Snek Bytecode
  20. 38:39Snek Memory Manager
  21. 39:33Memory Management
  22. 40:09Tricky Python Bits
  23. 41:47SnekBoard
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.