Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

YouTube

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

Devoxx via YouTube

Overview

Explore compiler design principles and their practical applications in everyday programming through this insightful conference talk. Delve into the similarities between transpilers and compilers, debunking myths and uncovering valuable lessons from language implementation design patterns. Learn how to apply compiler-like workflows to solve common programming challenges, with examples from projects like Drools and jBPM. Discover the key phases of compilation, including data transformation pipelines, workflow engines, and code generation. Gain insights into advanced topics such as boot-time optimization, application wiring, and annotation processing. Understand how these concepts relate to cutting-edge technologies like GraalVM and Quarkus. By the end of this talk, acquire a deeper understanding of compiler design principles and their relevance to modern software development practices.

Syllabus

Introduction
Motivation
Goals
Whats a Transpiler
Myths about Transpilers
Writing a good compiler and writing a good Transpiler
What can you solve with compilerlike workflows
How to describe a compilerlike workflow
BPM
Goal
Recognize your compilation phase
Data transformation pipelines
BPMN
How does a compiler work
What makes a proper compiler
Configuration file example
Data processing and producer reports
Workflow engine
Phases vs passes
Reading a config file
One single pass
Evaluation
Display
Lets Visitors
Runtime Representation
Generate Code
Boot Time Optimization
Application Wiring
Reflections
Annotation Processor
Cogito
Quercus
Code Extension
Druce
Rule
The Submarine
Conclusion
Links
Questions

Taught by

Devoxx

Reviews

Start your review of Your Program as a Transpiler - Applying Compiler Design to Everyday Programming

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.