As outlined on 'what is a DSL', both intent and implementation of DSLs vary considerably. The two types of internal DSL are most relevant to these pages, and how to implement an external DSL can be is 'off topic' for these pages, but the goals of external DSLs and a DSL-Full are the same, so… Continue reading Building DSLs: Why, When & How?
Category: 3-Appendix
Language: The Core of DSL design
For both standalone DSLs and language extensions, to build a DSL is to build new language. Being restricted to specific domain should allow the language to be small and simple, but it is still building new language. How do we keep new language intuitive and simple? This page looks at the basics for guidance. What… Continue reading Language: The Core of DSL design
Python Class vs Instance Variables
Python class variables offer a key tool for building libraries with DSL type syntax, as well as data shared between all instances of the class. This page explains how Python class variables work and gives some examples of usage. Class & Instance Variables Instances vs the class object Instance Variables Class Variables Using Class and… Continue reading Python Class vs Instance Variables
Kotlin Mobile / Kotlin Native
Kotlin is well established in mobile as a language for Android development, if not the language for Android development. But to be mobile development tool in general, kotlin needs to also work for iOS. The path to iOS applications is Kotlin Native Kotlin Native was first released on April 1st 2017. It was an actual… Continue reading Kotlin Mobile / Kotlin Native
Multi Platform
Kotlin Supports three overall platforms, with Native itself effectively being multi platform, producing even more options: JVM Javascript Kotlin Native ios android windows etc Some code can is platform independent, and can be run across all platforms. There is also code which is platform dependant, so strategies have to deal with a mix of both… Continue reading Multi Platform