Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
DSL Lightning talk
Search
DAloG
September 17, 2014
Programming
0
97
DSL Lightning talk
Short intro into DSL in Objective-C
DAloG
September 17, 2014
Tweet
Share
More Decks by DAloG
See All by DAloG
State normalization (RU)
dalog
0
200
Redux + MQTT
dalog
1
780
От задач к проблемам
dalog
1
260
Unlimited power of Data-Driven UI
dalog
4
650
Data-Driven View Controllers. Tips and Tricks
dalog
5
1.9k
2 years of Redux in iOS. Lessons learned
dalog
0
380
Why unidirectional architecture matter for iOS.
dalog
1
300
Mobile backend without REST
dalog
2
120
Self managed teams 101
dalog
0
160
Other Decks in Programming
See All in Programming
Things You Thought You Didn’t Need To Care About That Have a Big Impact On Your Job
hollycummins
0
260
Vueのバリデーション、結局どれを選べばいい? ― 自作バリデーションの限界と、脱却までの道のり ― / Which Vue Validation Library Should We Really Use? The Limits of Self-Made Validation and How I Finally Moved On
neginasu
2
1.6k
ドメイン駆動設計のエッセンス
masuda220
PRO
14
5.6k
GC25 Recap: The Code You Reviewed is Not the Code You Built / #newt_gophercon_tour
mazrean
0
120
When Dependencies Fail: Building Antifragile Applications in a Fragile World
selcukusta
0
110
CSC305 Lecture 12
javiergs
PRO
0
240
Blazing Fast UI Development with Compose Hot Reload (Bangladesh KUG, October 2025)
zsmb
1
340
Introduce Hono CLI
yusukebe
6
3.1k
NixOS + Kubernetesで構築する自宅サーバーのすべて
ichi_h3
0
1.2k
CSC509 Lecture 07
javiergs
PRO
0
250
CSC509 Lecture 06
javiergs
PRO
0
270
エンジニアインターン「Treasure」とHonoの2年、そして未来へ / Our Journey with Hono Two Years at Treasure and Beyond
carta_engineering
0
440
Featured
See All Featured
Leading Effective Engineering Teams in the AI Era
addyosmani
7
660
Agile that works and the tools we love
rasmusluckow
331
21k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.9k
Product Roadmaps are Hard
iamctodd
PRO
55
11k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
930
Optimizing for Happiness
mojombo
379
70k
The Invisible Side of Design
smashingmag
302
51k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
For a Future-Friendly Web
brad_frost
180
10k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
640
Writing Fast Ruby
sferik
630
62k
Transcript
DSL Практика создания и использования Алексей Демедецкий - 2014
История вопроса • Языки низкого уровня (C, C++, Prolog) •
Появление платформ (Java, .NET) • Развитие возможностей языков (Scala, Ruby) • Развитие инструментария (Clang) • Новая волна языков (D, Rust)
Примеры и приемы
Nocilla https://github.com/luisobo/Nocilla
Transformer https://github.com/schwa/Transformer-DSL
CoreData https://github.com/kpbode/CoreDataDSL
Parus https://github.com/DAlOG/Parus
Sensus
NSPredicate builder
Основные приемы • Парсинг строк • «Цепные блоки» • Препроцессор
• Фальшивый суперкласс
Основные приемы
Преимущества • Выразительность • Раннее определение ошибок • Ограниченность языка
• Авто дополнение
Недостатки • Высокий порог входа • Узкий коридор изменений •
Сложность написания • Низкое КПД усилий.
Выводы
Вопросы? https://speakerdeck.com/dalog/dsl-lightning-talk Skype: nobidon Twitter: DAlooG