Milan Todorović

Create DSL (Domain Specific Language) on top of Swift

Did you know you can build your own programming language inside Swift? Learn how to create powerful DSLs for any domain using features like Result Builders.

Create DSL (Domain Specific Language) on top of Swift
#1about 2 minutes

Defining a Domain Specific Language (DSL)

A Domain Specific Language is a high-level programming language optimized to solve problems within a specific business domain.

#2about 2 minutes

Classifying internal vs external DSLs

DSLs can be classified as external (built from scratch with a new compiler) or internal (built on top of a host language like Swift).

#3about 3 minutes

Common examples and best practices for DSLs

Effective DSLs often use English-like syntax for clarity, with common examples including HTML, CSS, SQL, and various markup languages.

#4about 4 minutes

Analyzing SwiftUI as a powerful DSL in Swift

SwiftUI serves as a prime example of a DSL built on Swift, using structures for nouns and modifier methods for verbs to describe user interfaces declaratively.

#5about 4 minutes

Key Swift syntax features for building DSLs

Swift enables powerful DSL creation through key features like result builders, trailing closures, property wrappers, and modifier-style methods.

#6about 7 minutes

Live coding a simple drawing DSL in Xcode

This live coding session demonstrates how to build a simple drawing DSL from scratch using a result builder, protocols, and structures for custom commands.

#7about 4 minutes

Applying DSLs and leveraging the host environment

A DSL allows you to focus on the problem domain while leveraging the host environment's features like version control, debugging, and UI tools.

Related jobs
Jobs that call for the skills explored in this talk.
tree-IT GmbH

tree-IT GmbH
Bad Neustadt an der Saale, Germany

54-80K
Intermediate
Senior
Java
TypeScript
+1

Featured Partners

Related Articles

View all articles
DC
Daniel Cranney
Why Attend a Developer Event?
Modern software engineering moves too fast for documentation alone. Attending a world-class event is about shifting from tactical execution to strategic leadership. Skill Diversification: Break out of your specific tech stack to see how the industry...
Why Attend a Developer Event?

From learning to earning

Jobs that call for the skills explored in this talk.

Software Engineer

Code Healers LLC
Hinesville, United States of America

Remote
40-50K
Intermediate
Senior
PHP
.NET
React
+2