Search Results

Documents authored by Maskeliunas, Rytis


Document
In-Browser C++ Interpreter for Lightweight Intelligent Programming Learning Environments

Authors: Tomas Blažauskas, Arnoldas Rauba, Jakub Swacha, Raffaele Montella, and Rytis Maskeliunas

Published in: OASIcs, Volume 133, 6th International Computer Programming Education Conference (ICPEC 2025)


Abstract
The paper presents a browser native C++ interpreter integrated into an AI-assisted educational platform designed to enhance programming learning in formal education. The interpreter leverages Parsing Expression Grammars (PEG) to generate Abstract Syntax Trees (AST) and executes C++ code using a TypeScript-based runtime. The system supports key C++ features, including pointer arithmetic, function overloading, and namespace resolution, and emulates memory management via reference-counted JavaScript objects. Integrated within a web-based learning environment, it provides automated feedback, error explanations, and code quality evaluations. The evaluation involved 4582 students in three difficulty levels and feedback from 14 teachers. The results include high system usability scale (SUS) scores (avg. 83.5) and WBLT learning effectiveness scores (avg. 4.58/5). Interpreter performance testing in 65 cases averaged under 10 ms per task, confirming its practical applicability to school curricula. The system supports SCORM and PWA deployment, enabling LMS-independent usage. The work introduces a technical innovation in browser-based C++ execution and a scalable framework for LLM-enhanced programming pedagogy.

Cite as

Tomas Blažauskas, Arnoldas Rauba, Jakub Swacha, Raffaele Montella, and Rytis Maskeliunas. In-Browser C++ Interpreter for Lightweight Intelligent Programming Learning Environments. In 6th International Computer Programming Education Conference (ICPEC 2025). Open Access Series in Informatics (OASIcs), Volume 133, pp. 14:1-14:15, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2025)


Copy BibTex To Clipboard

@InProceedings{blazauskas_et_al:OASIcs.ICPEC.2025.14,
  author =	{Bla\v{z}auskas, Tomas and Rauba, Arnoldas and Swacha, Jakub and Montella, Raffaele and Maskeliunas, Rytis},
  title =	{{In-Browser C++ Interpreter for Lightweight Intelligent Programming Learning Environments}},
  booktitle =	{6th International Computer Programming Education Conference (ICPEC 2025)},
  pages =	{14:1--14:15},
  series =	{Open Access Series in Informatics (OASIcs)},
  ISBN =	{978-3-95977-393-5},
  ISSN =	{2190-6807},
  year =	{2025},
  volume =	{133},
  editor =	{Queir\'{o}s, Ricardo and Pinto, M\'{a}rio and Portela, Filipe and Sim\~{o}es, Alberto},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/OASIcs.ICPEC.2025.14},
  URN =		{urn:nbn:de:0030-drops-240449},
  doi =		{10.4230/OASIcs.ICPEC.2025.14},
  annote =	{Keywords: C++ interpreter, browser-based execution, programming education, LLM-assisted learning, PEG, AST, TypeScript runtime}
}
Document
Client-Side Gamification Engine for Enhanced Programming Learning

Authors: Ricardo Queirós, Robertas Damaševičius, Rytis Maskeliūnas, and Jakub Swacha

Published in: OASIcs, Volume 122, 5th International Computer Programming Education Conference (ICPEC 2024)


Abstract
This study introduces the development of a client-based software layer within the FGPE project, aimed at enhancing the usability of the FGPE programming learning environment through client-side processing. The primary goal is to enable the evaluation of programming exercises and the application of gamification rules directly on the client-side, thereby facilitating offline functionality. This approach is particularly beneficial in regions with unreliable internet connectivity, as it allows continuous student interaction and feedback without the need for a constant server connection. The implementation promises to reduce server load significantly by shifting the evaluation workload to the client-side. This not only improves response times but also alleviates the burden on server resources, enhancing overall system efficiency. Two main strategies are explored: 1) caching the gamification service interface on the client-side, and 2) implementing a complete client-side gamification service that synchronizes with the server when online. Each approach is evaluated in terms of its impact on user experience, system performance, and potential security concerns. The findings suggest that while client-side processing offers considerable benefits in terms of scalability and user engagement, it also introduces challenges such as increased system complexity and potential data synchronization issues. The study concludes with recommendations for balancing these factors to optimize the design and implementation of client-based systems for educational environments.

Cite as

Ricardo Queirós, Robertas Damaševičius, Rytis Maskeliūnas, and Jakub Swacha. Client-Side Gamification Engine for Enhanced Programming Learning. In 5th International Computer Programming Education Conference (ICPEC 2024). Open Access Series in Informatics (OASIcs), Volume 122, pp. 11:1-11:12, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2024)


Copy BibTex To Clipboard

@InProceedings{queiros_et_al:OASIcs.ICPEC.2024.11,
  author =	{Queir\'{o}s, Ricardo and Dama\v{s}evi\v{c}ius, Robertas and Maskeli\={u}nas, Rytis and Swacha, Jakub},
  title =	{{Client-Side Gamification Engine for Enhanced Programming Learning}},
  booktitle =	{5th International Computer Programming Education Conference (ICPEC 2024)},
  pages =	{11:1--11:12},
  series =	{Open Access Series in Informatics (OASIcs)},
  ISBN =	{978-3-95977-347-8},
  ISSN =	{2190-6807},
  year =	{2024},
  volume =	{122},
  editor =	{Santos, Andr\'{e} L. and Pinto-Albuquerque, Maria},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/OASIcs.ICPEC.2024.11},
  URN =		{urn:nbn:de:0030-drops-209809},
  doi =		{10.4230/OASIcs.ICPEC.2024.11},
  annote =	{Keywords: Code generation, Computer Programming, Gamification}
}
Questions / Remarks / Feedback
X

Feedback for Dagstuhl Publishing


Thanks for your feedback!

Feedback submitted

Could not send message

Please try again later or send an E-mail