Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/3569173.3569174acmotherconferencesArticle/Chapter ViewAbstractPublication PagescsercConference Proceedingsconference-collections
research-article

Generating syntaxfree development environments for real world programming languages

Published: 31 May 2023 Publication History

Abstract

The prevailing concept when teaching computer science to beginners in school is visual programming, typically in the form of block based languages. Most approaches in this area involve special teaching languages like Scratch. Our approach connects the block based language concept seamlessly to conventional programming languages used in computer science, but for didactical purpose often to a core subset of such a language.
Generating a block editor for a language is a large effort and often done for every language individually. To tackle this, we developed a generalized framework which supports the development of visual editors for arbitrary formal languages. It is based on a grammar describing the formal language and compiles it to a block based editor interface which uses either our own visual representation or Google Blockly.
Beside presenting the approach through a series of examples, we also sketch applications of the approach for the languages XML, HTML, SQL and JavaScript. Apart from getting a visual editor, our implementation also allows the connection to a backend in the full conventional language, which completes the editor with the common semantics of the language, so that the language can also be executed in the context for which it was developed.

Supplementary Material

Presentation (2022 CSERC - Generating syntaxfree development environments.pdf)

References

[1]
Hussein Alrubaye, Stephanie Ludi, and Mohamed Wiem Mkaouer. 2019. Comparison of Block-Based and Hybrid-Based Environments in Transferring Programming Skills to Text-Based Environments. https://doi.org/10.48550/arXiv.1906.03060 arxiv:1906.03060 [cs]
[2]
Gert Braune and Andreas Mühling. 2020. Learning to Program: The Gap between School World and Everyday World. In Proceedings of the 15th Workshop on Primary and Secondary Computing Education(WiPSCE ’20). Association for Computing Machinery, New York, NY, USA, 1–9. https://doi.org/10.1145/3421590.3421597
[3]
Neil Fraser. 2015. Ten Things We’ve Learned from Blockly. In 2015 IEEE Blocks and Beyond Workshop (Blocks and Beyond). IEEE, Atlanta, GA, USA, 49–50. https://doi.org/10.1109/BLOCKS.2015.7369000
[4]
W. Hartmann, J. Nievergelt, and R. Reichert. 2001. Kara, Finite State Machines, and the Case for Programming as Part of General Education. In Proceedings IEEE Symposia on Human-Centric Computing Languages and Environments (Cat. No.01TH8587). 135–141. https://doi.org/10.1109/HCC.2001.995251
[5]
Michael Kölling, Neil C. C. Brown, and Amjad Altadmri. 2015. Frame-Based Editing: Easing the Transition from Blocks to Text-Based Programming. In Proceedings of the Workshop in Primary and Secondary Computing Education(WiPSCE ’15). Association for Computing Machinery, New York, NY, USA, 29–38. https://doi.org/10.1145/2818314.2818331
[6]
Sebastian Popp. 2019. Konzeption und Implementierung einer visuellen Lernumgebung zur spielerischen Einführung in die Programmierung. Bachelor. Fachhochschule Wedel, Wedel.
[7]
Philip Wadler. 2003. A Prettier Printer. In The Fun of Programming, Jeremy Gibbons and Oege de Moor (Eds.). Macmillan Education UK, London, 223–243. https://doi.org/10.1007/978-1-349-91518-7_11

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Other conferences
CSERC '22: Proceedings of the 11th Computer Science Education Research Conference
November 2022
65 pages
ISBN:9781450397476
DOI:10.1145/3569173
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 31 May 2023

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. block editor
  2. language specification

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Conference

CSERC '22

Acceptance Rates

Overall Acceptance Rate 24 of 60 submissions, 40%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 27
    Total Downloads
  • Downloads (Last 12 months)8
  • Downloads (Last 6 weeks)1
Reflects downloads up to 12 Feb 2025

Other Metrics

Citations

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

HTML Format

View this article in HTML Format.

HTML Format

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media