~/talk

Your Program as a Transpiler: Applying Compiler Design to Everyday Programming

slides:none on file

Explains how techniques from compiler and transpiler implementation (language design, translation pipelines) can be applied to everyday programming problems and to projects like Drools and jBPM. Discusses concrete lessons and design patterns from language implementation that clarify technologies such as GraalVM and Quarkus and shows examples encountered while working on Drools and jBPM.

AI-written summary · about

  1. 0:00Intro
  2. 3:07Motivation (cont'd)
  3. 3:41Goals
  4. 4:32Transpilers vs. Compilers
  5. 5:31Are transpilers simpler than compilers?
  6. 7:46Compiler-like workflows
  7. 9:16Function Orchestration
  8. 10:03Solution: Roll your own YAML format
  9. 10:30Alternate Solution
  10. 11:29Bonuses for choosing BPMN
  11. 12:40What's a compilation phase?
  12. 12:59Configuring the application
  13. 13:35Data Transformation Pipeline
  14. 13:58Example: BPMN Execution
  15. 14:35Example: BPMN Visualization
  16. 14:54Read BPMN into a Data Structure
  17. 15:24BPMN: From Tree to Graph
  18. 16:54Compiling a programming language
  19. 17:59Example. A Configuration File
  20. 18:22Example. Produce a Report
  21. 19:03Example. A Workflow Engine
  22. 19:32Compilation Phases
  23. 20:22Phase vs Pass
  24. 22:35Workflow Phases: Evaluation
  25. 23:22Workflow Phases: Layout
  26. 23:39Data Structures
  27. 23:57Pattern Matching
  28. 24:25The Poor Man's Alternatives
  29. 25:13Visitor Pattern
  30. 25:47Workflow Evaluation
  31. 27:06Workflow Layout
  32. 28:07The Killer App
  33. 29:19The Submarine Initiative
  34. 30:44Native Image: Restrictions
  35. 31:45Drools DRL
  36. 32:34Startup Time
  37. 33:13Take Aways
  38. 33:45Resources
~/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.