BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//pretalx//programme.europython.eu//europython-2024//speaker//R9XTH
 7
BEGIN:VTIMEZONE
TZID:CET
BEGIN:STANDARD
DTSTART:20001029T040000
RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10
TZNAME:CET
TZOFFSETFROM:+0200
TZOFFSETTO:+0100
END:STANDARD
BEGIN:DAYLIGHT
DTSTART:20000326T030000
RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=3
TZNAME:CEST
TZOFFSETFROM:+0100
TZOFFSETTO:+0200
END:DAYLIGHT
END:VTIMEZONE
BEGIN:VEVENT
UID:pretalx-europython-2024-KVNTFE@programme.europython.eu
DTSTART;TZID=CET:20240712T130000
DTEND;TZID=CET:20240712T140000
DESCRIPTION:The goal of redun is to provide the benefits of workflow engine
 s for Python code in an easy and unintrusive way. Workflow engines can hel
 p run code faster by using parallel distributed execution\, they can provi
 de checkpointing for fast resuming of previously halted execution\, they c
 an reactively re-execute code based on changes in data or code\, and can p
 rovide logging for data provenance.\n\nWhile there are lots of workflow en
 gines available even for Python\, redun differs by avoiding the need to re
 structure programs in terms of dataflow. In fact\, we take the position th
 at writing data flows directly is unnecessarily restrictive\, and by doing
  so we lose abstractions we have come to rely on in most modern high-level
  languages (control flow\, recursion\, higher order functions\, etc). redu
 n’s key insight is that workflows can be expressed as lazy expressions\,
  that are then evaluated by a scheduler that performs automatic paralleliz
 ation\, caching\, and data provenance logging.\n\nredun’s key features a
 re:\n- Workflows are defined by lazy expressions that when evaluated emit 
 dynamic directed acyclic graphs (DAGs)\, enabling complex data flows.\n- I
 ncremental computation that is reactive to both data changes as well as co
 de changes.\n- Code and data changes are detected using hashing of in memo
 ry values\, external data sources or source code of individual Python func
 tions.\n- Workflow tasks can be executed on a variety of compute backends.
  (threads\, processes\, AWS and GCP batch jobs\, Spark jobs\, etc).\n- Pas
 t intermediate results are cached centrally and reused across workflows.\n
 \nLink to the code: https://github.com/insitro/redun/
DTSTAMP:20260518T115247Z
LOCATION:Main Hall C
SUMMARY:Redun: Lazy Expressions for Efficient Reactive Python Workflows - M
 aciej Szymczak\, Magdalena Borecka
URL:https://programme.europython.eu/europython-2024/talk/KVNTFE/
END:VEVENT
END:VCALENDAR
