We present KTML, a Kotlin library for creating well-structured and type-safe HTML documents. KTML is entirely built within the Kotlin language set, highlighting Kotlin’s suitability through language design choices to support internal DSLs. Internal DSLs are fully embedded in an existing ecosystem and can take full advantage of the host language’s capabilities. Yet, they are designed for a single purpose, abstracting from otherwise cumbersome boilerplate code and other intricacies while simultaneously allowing the developer to use the tool stack they are familiar with. We exemplify KTML through the professional Tangle project, part of a conference management collection that generates different programme views during ongoing conferences.

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

A Case-Study on Structured Modeling with Internal Domain-Specific Languages

  • Steven Smyth,
  • Tim Tegeler,
  • Daniel Busch,
  • Steve Boßelmann

摘要

We present KTML, a Kotlin library for creating well-structured and type-safe HTML documents. KTML is entirely built within the Kotlin language set, highlighting Kotlin’s suitability through language design choices to support internal DSLs. Internal DSLs are fully embedded in an existing ecosystem and can take full advantage of the host language’s capabilities. Yet, they are designed for a single purpose, abstracting from otherwise cumbersome boilerplate code and other intricacies while simultaneously allowing the developer to use the tool stack they are familiar with. We exemplify KTML through the professional Tangle project, part of a conference management collection that generates different programme views during ongoing conferences.