TY - GEN
T1 - Visual and Textual Language Synchronization for End-User Programming Environments
AU - Silahli, Anahide
AU - Gutierrez, Jose Pablo De la Rosa
AU - Silva, Thiago Rocha
PY - 2025
Y1 - 2025
N2 - End-User Programming (EUP) environments typically offer either a text-based or a visual programming language for end users. Even when both options are provided, they lack real-time synchronization between the two representations. This study explores the integration of the textual and visual representations of a domain-specific language (DSL) for EUP based on Behaviour-Driven Development (BDD) scenarios. By combining a visual editor featuring a block-based language with a textual representation featuring syntax highlighting, error detection, and auto-completion, the platform can enhance accessibility, flexibility, and efficiency in EUP. The primary challenge investigated is achieving real-time, two-way synchronization between the visual and textual editors to maintain consistent code representation, crucial for an optimal user experience. The solution leverages Blockly’s custom code generators to translate blocks to text and Abstract Syntax Trees (ASTs) to convert text to blocks. We evaluated our approach in two use cases in the robotics domain, confirming the potential of the dual editor to offer flexible, domain-tailored end-user programming, with potential for broad future applications.
AB - End-User Programming (EUP) environments typically offer either a text-based or a visual programming language for end users. Even when both options are provided, they lack real-time synchronization between the two representations. This study explores the integration of the textual and visual representations of a domain-specific language (DSL) for EUP based on Behaviour-Driven Development (BDD) scenarios. By combining a visual editor featuring a block-based language with a textual representation featuring syntax highlighting, error detection, and auto-completion, the platform can enhance accessibility, flexibility, and efficiency in EUP. The primary challenge investigated is achieving real-time, two-way synchronization between the visual and textual editors to maintain consistent code representation, crucial for an optimal user experience. The solution leverages Blockly’s custom code generators to translate blocks to text and Abstract Syntax Trees (ASTs) to convert text to blocks. We evaluated our approach in two use cases in the robotics domain, confirming the potential of the dual editor to offer flexible, domain-tailored end-user programming, with potential for broad future applications.
U2 - 10.1007/978-3-031-95452-8_8
DO - 10.1007/978-3-031-95452-8_8
M3 - Article in proceedings
SN - 978-3-031-95451-1
T3 - Lecture Notes in Computer Science
SP - 133
EP - 150
BT - End-User Development
PB - Springer
T2 - 10th International Symposium, IS-EUD 2025
Y2 - 16 June 2025 through 18 July 2025
ER -