CNL2C: An editor, syntax checker and code generator for CNUIML using Xtext and Xtend
End-User Development (EUD) is a dynamic research area in computer science, focusing on empowering end-users to create and modify software through various approaches, constantly evolving with new methods and tools. To enhance end-user participation, research suggests developing user-friendly tools for end-users to design the UI, with the final source code derived from analyzing and automatically transforming this UI. Controlled natural language programming uses a limited version of a natural language for coding. This approach enhances programming accessibility by enabling end-users to code in a familiar language, maintaining the necessary precision and clarity. This research study the development of the CNUIML language and generation of an editor for it using Xtext. It delves into syntax error checking and target code generation using Xtext and Xtend. The CNUIML language is used to describe web application interfaces, focusing on system requirements and end-user concerns. Web applications consist of interconnected pages and forms, forming a tree of objects. Each application is a set of forms with specific value types and domains. In order to evaluate the usability of the designed tool, we have used a case study. This case study demonstrates the process of creating CNUIML models and generating the associated HTML codes using CNL2C.