[et_pb_section fb_built=”1″ _builder_version=”3.0.47″ custom_padding=”0|0px|0|0px|false|false”][et_pb_row _builder_version=”3.9″][et_pb_column type=”4_4″ _builder_version=”3.0.47″ parallax=”off” parallax_method=”on”][et_pb_post_title author=”off” comments=”off” _builder_version=”3.9″][/et_pb_post_title][/et_pb_column][/et_pb_row][et_pb_row make_equal=”on” module_class_1=”vertical-center” module_class_2=”vertical-center” _builder_version=”3.11.1″][et_pb_column type=”2_3″ _builder_version=”3.0.47″ parallax=”off” parallax_method=”on” module_class=”vertical-center”][et_pb_text _builder_version=”3.9″ background_size=”initial” background_position=”top_left” background_repeat=”repeat”]
Anton Arhipov is a Developer Advocate for TeamCity at JetBrains. His professional interests include everything Java, but also other programming languages, middleware and developer tooling. Java Champion since 2014. He’s also a co-organizer of DevClub.eu, a local developers community in Tallinn.
[/et_pb_text][/et_pb_column][et_pb_column type=”1_3″ _builder_version=”3.0.47″ parallax=”off” parallax_method=”on” module_class=”vertical-center”][et_pb_image src=”https://lh3.googleusercontent.com/HpSOvsg2f6xdH2jiAlL41LCHLnk-93LiNmTxAGBF5rO5V9ScmY5iiK92SWjxouKWaumP–6OqNNU_Z4WDLpBJgaqIduRNrrv9s1tfpCZIdE2nrqpICfHj6BQFO-x5HjNqWQrsp4uTT79FAwrZZpNLT9i3th1o7fUTfCcraLDizgiQohRlfKtDkhfC7ksJTNkLqZTR8a24VIVXKmreZZRqbBQS9yqPLgt-LZ7-5nqhpnNyQ9Ws8wGQSOgSb6bRKYXaJ-G_K6b9d5zXnFsLSk2yWIjLsx7yEnzHhSJuSF05PMwsveNqrkUnfuWs2QXjCdVJ3ZYP2lhzTwza-S5Tyj7yXv3UR1nEHJn4Sejr7ltdGZprMAPrU-TdKz0jQUUi91ryWkoS-_h7lu0PTzzu8u54ofsAXtv1WcvpZ7jwrdJUjtrnL026oJ42g0wSn9_Sr6WxYUMbwtEoGPFA87BLMueMOsIyXs0_xIzLWGZ2Ef3CrScHWjyvPzw9vmY8Iwl9RgoaBE3iQaXK_T7DDl_R-8e_QLWNWbmSssKu3lrGKLEUF6nWRkbr2lq5xclnIOaOGtspTAboKWMI_tL2tkG8h7IBuQmi-7lJIXFS38s4zyIXax8hYtcI0wlyrvnR2EoJcclGI0UPyYt3QIXzZc-Q9HIAdMCxQnNgIFL=w1000-no-tmp.jpg” url_new_window=”on” align=”right” _builder_version=”3.11.1″ border_radii=”on|100%|100%|100%|100%” custom_margin=”0px|||”][/et_pb_image][/et_pb_column][/et_pb_row][et_pb_row _builder_version=”3.17.6″][et_pb_column type=”4_4″ _builder_version=”3.17.6″ parallax=”off” parallax_method=”on”][et_pb_code text_orientation=”center” _builder_version=”3.17.6″][/et_pb_code][/et_pb_column][/et_pb_row][et_pb_row _builder_version=”3.9″][et_pb_column type=”4_4″ _builder_version=”3.0.47″ parallax=”off” parallax_method=”on”][et_pb_text _builder_version=”3.11.1″]
Learn how to create type-safe and statically typed DSLs in Kotlin. Uncover the language features that makes DSL creation possible. We’ll take a look at a few practical examples and create a simple DSL ourselves.
The session starts with an introduction to DSL related Kotlin language features. Next, we create a simple DSL in a live coding session and then continue adding expressiveness and language features. We cover a number of examples, like JSON or XML builder’s, data binding, configuration & template engines. As a bonus, if time permits, we’ll take a look at Kotlin DSL example in TeamCity continuous integration server.
[/et_pb_text][et_pb_button button_url=”https://romania.voxxeddays.com/cluj-napoca/2018-11-22/#speakers” url_new_window=”on” button_text=”SEE ALL OUR SPEAKERS” button_alignment=”center” _builder_version=”3.16″ custom_button=”on” button_font=”||||||||” button_use_icon=”off” box_shadow_style=”preset1″ button_text_color_hover=”#ffffff” button_bg_color_hover=”#18b9f0″ button_text_size__hover_enabled=”off” button_one_text_size__hover_enabled=”off” button_two_text_size__hover_enabled=”off” button_text_color__hover_enabled=”on” button_text_color__hover=”#ffffff” button_one_text_color__hover_enabled=”off” button_two_text_color__hover_enabled=”off” button_border_width__hover_enabled=”off” button_one_border_width__hover_enabled=”off” button_two_border_width__hover_enabled=”off” button_border_color__hover_enabled=”off” button_one_border_color__hover_enabled=”off” button_two_border_color__hover_enabled=”off” button_border_radius__hover_enabled=”off” button_one_border_radius__hover_enabled=”off” button_two_border_radius__hover_enabled=”off” button_letter_spacing__hover_enabled=”off” button_one_letter_spacing__hover_enabled=”off” button_two_letter_spacing__hover_enabled=”off” button_bg_color__hover_enabled=”on” button_bg_color__hover=”#18b9f0″ button_one_bg_color__hover_enabled=”off” button_two_bg_color__hover_enabled=”off”][/et_pb_button][/et_pb_column][/et_pb_row][/et_pb_section]