Teaching logic programming: a review
DOI:
https://doi.org/10.55056/cte.838Keywords:
logic programming, computer science education, Prolog, Answer Set Programming, Datalog, constraint logic programming, declarative programming, teaching methodsAbstract
Logic programming constitutes a significant paradigm within computer science, offering a unique approach to programming based on formal logic rather than conventional imperative instructions. This review examines contemporary methodologies for teaching logic programming, spanning various paradigms including Prolog, Answer Set Programming (ASP), Datalog, and Constraint Logic Programming (CLP). Through a comprehensive analysis of literature, we identify effective pedagogical strategies, common obstacles faced by educators and students, and emerging trends in instructional techniques. Our findings reveal that visualization tools, problem-based learning, integration with other programming paradigms, and contextual application-based approaches demonstrate the most promise for enhancing student comprehension and engagement. Additionally, we explore cognitive challenges specific to declarative thinking, educational challenges related to curriculum integration, and motivational issues that affect student learning outcomes. This review offers evidence-based recommendations for practitioners and identifies promising directions for future research in logic programming education.
Downloads
References
Adachi, Y., 2008. Prolog visualization system using Logichart diagrams. 18th Workshop on Logic-based methods in Programming Environments, WLPE 2008. pp.8–18. Available from: http://arxiv.org/abs/0903.2207.
Anderson, D.M., 2013. Overarching Goals, Values, and Assumptions of Integrated Curriculum Design. SCHOLE: A Journal of Leisure Studies and Recreation Education, 28(1), pp.1–10. Available from: https://doi.org/10.1080/1937156X.2013.11949690. DOI: https://doi.org/10.1080/1937156X.2013.11949690
Apt, K.R. and Wallace, M., 2006. Constraint logic programming using ECLiPSe. Cambridge University Press. https://www.researchgate.net/publication/220693610, Available from: https://doi.org/10.1017/CBO9780511607400. DOI: https://doi.org/10.1017/CBO9780511607400
Awasekar, D.D., 2013. Effect of Program Visualization to Teach Computer Programming in a Resource Constrained Classroom. 2013 IEEE Fifth International Conference on Technology for Education (t4e 2013). pp.93–100. Available from: https://doi.org/10.1109/T4E.2013.31. DOI: https://doi.org/10.1109/T4E.2013.31
Bădică, A., Bădică, C. and Ivanović, M., 2020. Block structured scheduling using constraint logic programming. AI Communications, 33(1), pp.41–57. Available from: https://doi.org/10.3233/AIC-200650. DOI: https://doi.org/10.3233/AIC-200650
Bellström, P. and Thorén, C., 2009. Learning how to program through visualization: A pilot study on the bubble sort algorithm. 2nd International Conference on the Applications of Digital Information and Web Technologies, ICADIWT 2009. pp.90–94. Available from: https://doi.org/10.1109/ICADIWT.2009.5273943. DOI: https://doi.org/10.1109/ICADIWT.2009.5273943
Bertagnon, A. and Gavanelli, M., 2024. ASPECT: Answer Set rePresentation as vEctor graphiCs in laTex. Journal of Logic and Computation, 34(8), pp.1580–1607. Available from: https://doi.org/10.1093/LOGCOM/EXAE042. DOI: https://doi.org/10.1093/logcom/exae042
Boluk, K.A., 2023. Integrated Curriculum Design: An Empowering and Engaging Pedagogical Approach Preparing 21st Graduates. SCHOLE: A Journal of Leisure Studies and Recreation Education, 38(3), pp.224–229. Available from: https://doi.org/10.1080/1937156X.2022.2099326. DOI: https://doi.org/10.1080/1937156X.2022.2099326
Choo, S.S.Y., 2012. Scaffolding in Problem-based Learning. In: G. O’Grady, E.H. Yew, K.P. Goh and H.G. Schmidt, eds. One-Day, One-Problem: An Approach to Problem-based Learning. Singapore: Springer Singapore, pp.167–184. Available from: https://doi.org/10.1007/978-981-4021-75-3_8. DOI: https://doi.org/10.1007/978-981-4021-75-3_8
Cuteri, B. and Ricca, F., 2017. A compiler for stratified datalog programs: preliminary results. In: S. Flesca, S. Greco, E. Masciari and D. Saccà, eds. Proceedings of the 25th Italian Symposium on Advanced Database Systems, Squillace Lido (Catanzaro), Italy, June 25-29, 2017. CEUR-WS.org, CEUR Workshop Proceedings, vol. 2037, p.158. Available from: https://ceur-ws.org/Vol-2037/paper_23.pdf.
Dal Palù, A., Dovier, A., Fogolari, F. and Pontelli, E., 2011. Exploring protein fragment assembly using CLP. Proceedings of the Twenty-Second International Joint Conference on Artificial Intelligence - Volume Volume Three. AAAI Press, IJCAI’11, p.2590–2595. Available from: https://www.ijcai.org/Proceedings/11/Papers/431.pdf.
del Vado Vírseda, R. and Morente, F.P., 2011. An Innovative Teaching Tool based on Semantic Tableaux for Verification and Debugging of Imperative Programs. Procedia Computer Science, 4, pp.1907–1916. Proceedings of the International Conference on Computational Science, ICCS 2011. Available from: https://doi.org/10.1016/j.procs.2011.04.208. DOI: https://doi.org/10.1016/j.procs.2011.04.208
Dewey, K., Conrad, P., Craig, M. and Morozova, E., 2017. Evaluating Test Suite Effectiveness and Assessing Student Code via Constraint Logic Programming. Proceedings of the 2017 ACM Conference on Innovation and Technology in Computer Science Education. New York, NY, USA: Association for Computing Machinery, ITiCSE ’17, p.317–322. Available from: https://doi.org/10.1145/3059009.3059051. DOI: https://doi.org/10.1145/3059009.3059051
El-Khatib, O., Pontelli, E. and Son, T.C., 2006. A Tool for Knowledge Base Integration and Querying. Formalizing and Compiling Background Knowledge and Its Applications to Knowledge Representation and Question Answering, Papers from the 2006 AAAI Spring Symposium, Technical Report SS-06-05, Stanford, California, USA, March 27-29, 2006. AAAI, pp.16–21. Available from: http://www.aaai.org/Library/Symposia/Spring/2006/ss06-05-003.php.
Eppler, M.J., 2006. A Comparison between Concept Maps, Mind Maps, Conceptual Diagrams, and Visual Metaphors as Complementary Tools for Knowledge Construction and Sharing. Information Visualization, 5(3), pp.202–210. Available from: https://doi.org/10.1057/palgrave.ivs.9500131. DOI: https://doi.org/10.1057/palgrave.ivs.9500131
Fages, F., 2024. On Teaching Constraint-based Modeling and Algorithms for Decision Support in Prolog. In: J. Arias, D. Azzolini, K. Basu, V. Dahl, M. Hecher, F. Pacenza, Z.G. Saribatur and S.C. Varanasi, eds. Workshop Proceedings of the 40th International Conference on Logic Programming (ICLP-WS 2024) co-located with the 40th International Conference on Logic Programming (ICLP 2024), Dallas, TX, USA, October 12th and 13th, 2024. CEUR-WS.org, CEUR Workshop Proceedings, vol. 3799. Available from: https://ceur-ws.org/Vol-3799/short7PEG2.0.pdf.
Gavanelli, M. and Rossi, F., 2010. Constraint Logic Programming. In: A. Dovier and E. Pontelli, eds. A 25-Year Perspective on Logic Programming: Achievements of the Italian Association for Logic Programming, GULP. Berlin, Heidelberg: Springer Berlin Heidelberg, Lecture Notes in Computer Science, vol. 6125, pp.64–86. Available from: https://doi.org/10.1007/978-3-642-14309-0_4. DOI: https://doi.org/10.1007/978-3-642-14309-0_4
Gebser, M., Obermeier, P., Otto, T., Schaub, T., Sabuncu, O., Nguyen, V. and Son, T.C., 2018. Experimenting with robotic intra-logistics domains. Theory and Practice of Logic Programming, 18(3-4), pp.502–519. Available from: https://doi.org/10.1017/S1471068418000200. DOI: https://doi.org/10.1017/S1471068418000200
Gelfond, G., Balduccini, M., Ferrucci, D., Kalyanpur, A. and Lally, A., 2023. Machines as Thought Partners: Reflections on 50 Years of Prolog. In: D.S. Warren, V. Dahl, T. Eiter, M.V. Hermenegildo, R. Kowalski and F. Rossi, eds. Prolog: The Next 50 Years. Cham: Springer Nature Switzerland, Lecture Notes in Computer Science, vol. 13900, pp.386–392. Available from: https://doi.org/10.1007/978-3-031-35254-6_31. DOI: https://doi.org/10.1007/978-3-031-35254-6_31
Genesereth, M.R., 2024. General Game Playing - Killer App for Logic Programming. In: J. Arias, D. Azzolini, K. Basu, V. Dahl, M. Hecher, F. Pacenza, Z.G. Saribatur and S.C. Varanasi, eds. Workshop Proceedings of the 40th International Conference on Logic Programming (ICLP-WS 2024) co-located with the 40th International Conference on Logic Programming (ICLP 2024), Dallas, TX, USA, October 12th and 13th, 2024. CEUR-WS.org, CEUR Workshop Proceedings, vol. 3799. Available from: https://ceur-ws.org/Vol-3799/short3PEG2.0.pdf.
Hansen, Z., Du, H., Xing, W., Eckel, R., Lugo, J. and Zhang, Y., 2022. A Preliminary Data-driven Analysis of Common Errors Encountered by Novice SPARC Programmers. In: Y. Lierler, J.F. Morales, C. Dodaro, V. Dahl, M. Gebser and K.T. Tekle, eds. Proceedings 38th International Conference on Logic Programming, ICLP 2022 Technical Communications / Doctoral Consortium, Haifa, Israel, 31st July 2022 - 6th August 2022. EPTCS, vol. 364, pp.12–24. Available from: https://doi.org/10.4204/EPTCS.364.2. DOI: https://doi.org/10.4204/EPTCS.364.2
Hanus, M., 2007. Multi-paradigm Declarative Languages. In: V. Dahl and I. Niemelä, eds. Logic Programming. Berlin, Heidelberg: Springer Berlin Heidelberg, Lecture Notes in Computer Science, vol. 4670 LNCS, pp.45–75. Available from: https://doi.org/10.1007/978-3-540-74610-2_5. DOI: https://doi.org/10.1007/978-3-540-74610-2_5
Hanus, M., 2013. Functional Logic Programming: From Theory to Curry. In: A. Voronkov and C. Weidenbach, eds. Programming Logics: Essays in Memory of Harald Ganzinger. Berlin, Heidelberg: Springer Berlin Heidelberg, Lecture Notes in Computer Science, vol. 7797, pp.123–168. Available from: https://doi.org/10.1007/978-3-642-37651-1_6. DOI: https://doi.org/10.1007/978-3-642-37651-1_6
Harimurti, R., Ekohariadi, Munoto and Asto Buditjahjanto, I.G.P., 2021. Integrating k-means clustering into automatic programming assessment tool for student performance analysis. Indonesian Journal of Electrical Engineering and Computer Science, 22(3), pp.1389–1395. Available from: https://doi.org/10.11591/ijeecs.v22.i3.pp1389-1395. DOI: https://doi.org/10.11591/ijeecs.v22.i3.pp1389-1395
Hynek, J., 2018. The Role of Logic Programming in ICT Specialists Curricula. 2018 28th EAEEIE Annual Conference (EAEEIE). pp.1–9. Available from: https://doi.org/10.1109/EAEEIE.2018.8534297. DOI: https://doi.org/10.1109/EAEEIE.2018.8534297
Ibarra-Torres, F., Caiza, G., García, M.V. and Barona-Pico, V., 2024. Use of basic programming tools to foster programming logic in university students with school preparation other than computer science. Procedia Computer Science, 237, pp.413–419. International Conference on Industry Sciences and Computer Science Innovation. Available from: https://doi.org/10.1016/j.procs.2024.05.122. DOI: https://doi.org/10.1016/j.procs.2024.05.122
Jones, N.D., Azzam, T., Wanzer, D.L., Skousen, D., Knight, C. and Sabarre, N., 2020. Enhancing the Effectiveness of Logic Models. American Journal of Evaluation, 41(3), pp.452–470. Available from: https://doi.org/10.1177/1098214018824417. DOI: https://doi.org/10.1177/1098214018824417
Kerdprasop, N. and Kerdprasop, K., 2011. Frequent pattern discovery with constraint logic programming. International Journal of Mathematical Models and Methods in Applied Sciences, 5(8), pp.1345–1353. Available from: https://www.researchgate.net/publication/286164687.
Kheirkhahzadeh, A.D., Sauer, C.S. and Fotaris, P., 2016. Practice makes perfect - Gamification of a competitive learning experience. Proceedings of the European Conference on Games-based Learning. pp.327–335. Available from: https://www.researchgate.net/publication/309034354.
Körner, P., Schneider, D. and Leuschel, M., 2021. On the Performance of Bytecode Interpreters in Prolog. In: M. Hanus and C. Sacerdoti Coen, eds. Functional and Constraint Logic Programming. Cham: Springer International Publishing, vol. 12560, pp.41–56. Available from: https://doi.org/10.1007/978-3-030-75333-7_3. DOI: https://doi.org/10.1007/978-3-030-75333-7_3
Kowalski, R., 2013. Logic Programming in the 1970s. In: P. Cabalar and T.C. Son, eds. Logic Programming and Nonmonotonic Reasoning. Berlin, Heidelberg: Springer Berlin Heidelberg, Lecture Notes in Computer Science, vol. 8148, pp.11–22. Available from: https://doi.org/10.1007/978-3-642-40564-8_2. DOI: https://doi.org/10.1007/978-3-642-40564-8_2
Krugel, J. and Hubwieser, P., 2020. Web-Based Learning in Computer Science: Insights into Progress and Problems of Learners in MOOCs. In: M. Giannakos, ed. Non-Formal and Informal Science Learning in the ICT Era. Singapore: Springer Singapore, Lecture Notes in Educational Technology, pp.51–79. Available from: https://doi.org/10.1007/978-981-15-6747-6_4. DOI: https://doi.org/10.1007/978-981-15-6747-6_4
Lape, N.K., 2011. Tiered scaffolding of Problem-Based Learning techniques in a Thermodynamics course. 2011 ASEE Annual Conference & Exposition. Vancouver, BC: ASEE Conferences. Available from: https://doi.org/10.18260/1-2--18365. DOI: https://doi.org/10.18260/1-2--18365
Le, N.T., 2005. Evaluation of a Constraint-based Error Diagnosis System for Logic Programming. Proceedings of the 2005 Conference on Towards Sustainable and Scalable Educational Innovations Informed by the Learning Sciences: Sharing Good Practices of Research, Experimentation and Innovation. NLD: IOS Press, p.965–966. Available from: https://www.researchgate.net/publication/221319184.
Ligeza, A., 2006. Logic Programming and Prolog. Logical Foundations for Rule-Based Systems. 2nd ed. Berlin, Heidelberg: Springer Berlin Heidelberg, Studies in Computational Intelligence, vol. 11, pp.173–188. Available from: https://doi.org/10.1007/3-540-32446-1_11. DOI: https://doi.org/10.1007/3-540-32446-1_11
Loboda, T.D. and Brusilovsky, P., 2010. User-adaptive explanatory program visualization: evaluation and insights from eye movements. User Modeling and User-Adapted Interaction, 20(3), pp.191–226. Available from: https://doi.org/10.1007/s11257-010-9077-1. DOI: https://doi.org/10.1007/s11257-010-9077-1
Lovrencic, S. and Sekovanic, V., 2023. How Well Students Perceive Their Understanding of Logic Programming Course Content? In: D. Cisic, N. Vrcek, M. Koricic, V. Gradisnik, K. Skala, Z. Car, M. Cicin-Sain, S. Babic, V. Sruk, D. Skvorc, A. Jovic, S. Gros, B. Vrdoljak, E. Tijan, T. Katulic, J. Petrovic, T.G. Grbac and L. Bozicevic, eds. 46th MIPRO ICT and Electronics Convention, MIPRO 2023, Opatija, Croatia, May 22-26, 2023. IEEE, pp.824–828. Available from: https://doi.org/10.23919/MIPRO57284.2023.10159945. DOI: https://doi.org/10.23919/MIPRO57284.2023.10159945
Malandrino, D., Guarino, A., Lettieri, N. and Zaccagnino, R., 2019. On the Visualization of Logic: A Diagrammatic Language Based on Spatial, Graphical and Symbolic Notations. In: E. Banissi, A. Ursyn, M.W.M. Bannatyne, N. Datia, R. Francese, M. Sarfraz, T.G. Wyeld, F. Bouali, G. Venturini, H. Azzag, M. Lebbah, M. Trutschl, U. Cvek, H. Müller, M. Nakayama, S. Kernbach, L. Caruccio, M. Risi, U. Erra, A. Vitiello and V. Rossano, eds. 23rd International Conference on Information Visualisation, IV 2019, Paris, France, July 2-5, 2019, Part I. IEEE, pp.7–12. Available from: https://doi.org/10.1109/IV.2019.00011. DOI: https://doi.org/10.1109/IV.2019.00011
Marcopoulos, E. and Zhang, Y., 2019. onlineSPARC: A Programming Environment for Answer Set Programming. Theory and Practice of Logic Programming, 19(2), pp.262–289. Available from: https://doi.org/10.1017/S1471068418000509. DOI: https://doi.org/10.1017/S1471068418000509
Miranda Júnior, A., Oliveira, O.C. and Mistris, A., 2018. CeTeCop - Conceptual framework collaborative for learning development and programming. In: P. Isaías and H. Weghorn, eds. Proceedings of the International Conferences on WWW/Internet 2018 and Applied Computing 2018. pp.59–66. Available from: https://tinyurl.com/4tkd9rdm.
Msweli, N.T., Mawela, T. and Twinomurinzi, H., 2023. Transdisciplinary teaching practices for data science education: A comprehensive framework for integrating disciplines. Social Sciences & Humanities Open, 8(1), p.100628. Available from: https://doi.org/10.1016/j.ssaho.2023.100628. DOI: https://doi.org/10.1016/j.ssaho.2023.100628
Nipyrakis, A. and Stavrou, D., 2022. Integration of ICT in Science Education Laboratories by Primary Student Teachers. In: S. Papadakis and M. Kalogiannakis, eds. STEM, Robotics, Mobile Apps in Early Childhood and Primary Education: Technology to Promote Teaching and Learning. Singapore: Springer Nature Singapore, Lecture Notes in Educational Technology, pp.55–78. Available from: https://doi.org/10.1007/978-981-19-0568-1_4. DOI: https://doi.org/10.1007/978-981-19-0568-1_4
Oprea, M., 2019. Onto-DeclarProg: An Educational Ontology for Declarative Programming. Proceedings of the 14th International Conference On Virtual Learning. Bucharest University Press, pp.37–43. Available from: https://icvl.eu/documents/3/430216179-Proceedings-of-ICVL-2019-ISSN-1844-8933-ISI-Proceedings.pdf.
Page, R., 2009. Computational logic in the undergraduate curriculum. Proceedings of the Eighth International Workshop on the ACL2 Theorem Prover and Its Applications. New York, NY, USA: Association for Computing Machinery, ACL2 ’09, p.29–32. Available from: https://doi.org/10.1145/1637837.1637842. DOI: https://doi.org/10.1145/1637837.1637842
Paramonov, S., Bessiere, C., Dries, A. and Raedt, L.D., 2018. Sketched Answer Set Programming. In: L.H. Tsoukalas, É. Grégoire and M. Alamaniotis, eds. IEEE 30th International Conference on Tools with Artificial Intelligence, ICTAI 2018, 5-7 November 2018, Volos, Greece. IEEE, pp.694–701. Available from: https://doi.org/10.1109/ICTAI.2018.00110. DOI: https://doi.org/10.1109/ICTAI.2018.00110
Pereira, D.E.F. and Seabra, R.D., 2023. Open Educational Resource for Studying Algorithms and Programming Logic: An Approach to the Technical Level Integrated with Secondary School. Informatics in Education, 22(3), pp.441–462. Available from: https://doi.org/10.15388/infedu.2023.17. DOI: https://doi.org/10.15388/infedu.2023.17
Perez-Lancho, B., Jorge, E., Viuda, A. de la and Sanchez, R., 2007. Software Tools in Logic Education: Some Examples. Logic Journal of the IGPL, 15(4), pp.347–357. Available from: https://doi.org/10.1093/jigpal/jzm025. DOI: https://doi.org/10.1093/jigpal/jzm025
Ragonis, N. and Haberman, B., 2010. Linking different programming paradigms: thoughts about instructional design. Proceedings of the Fifteenth Annual Conference on Innovation and Technology in Computer Science Education. New York, NY, USA: Association for Computing Machinery, ITiCSE ’10, p.310. Available from: https://doi.org/10.1145/1822090.1822187. DOI: https://doi.org/10.1145/1822090.1822187
Rajesh, S., Rao, V.V. and Thushara, M.G., 2024. Comprehensive Investigation of Code Assessment Tools in Programming Courses. 2024 IEEE 9th International Conference for Convergence in Technology (I2CT). pp.1–6. Available from: https://doi.org/10.1109/I2CT61223.2024.10543863. DOI: https://doi.org/10.1109/I2CT61223.2024.10543863
Rodríguez, J.P. and Cecchi, L.A., 2024. Logic Programming in Primary School: Facing Computer Science at an Early Age. L Latin American Computer Conference, CLEI 2024, Buenos Aires, Argentina, August 12-16, 2024. IEEE, pp.1–9. Available from: https://doi.org/10.1109/CLEI64178.2024.10700103. DOI: https://doi.org/10.1109/CLEI64178.2024.10700103
Sáenz-Pérez, F., 2011. DES: A Deductive Database System. Electronic Notes in Theoretical Computer Science, 271, pp.63–78. Proceedings of the Tenth Spanish Conference on Programming and Languages (PROLE 2010). Available from: https://doi.org/10.1016/j.entcs.2011.02.011. DOI: https://doi.org/10.1016/j.entcs.2011.02.011
Schaub, T. and Woltran, S., 2018. Answer set programming unleashed! KI - Künstliche Intelligenz, 32(2), pp.105–108. Available from: https://doi.org/10.1007/s13218-018-0550-z. DOI: https://doi.org/10.1007/s13218-018-0550-z
Sharma, R., Shen, H. and Goodwin, R., 2016. Voluntary participation in discussion forums as an engagement indicator: an empirical study of teaching first-year programming. Proceedings of the 28th Australian Conference on Computer-Human Interaction. New York, NY, USA: Association for Computing Machinery, OzCHI ’16, p.489–493. Available from: https://doi.org/10.1145/3010915.3010967. DOI: https://doi.org/10.1145/3010915.3010967
Skvortsov, E.S., Xia, Y., Bowers, S. and Ludäscher, B., 2024. From Logic Programming to Programming in Logica: A First-Course in Declarative Data Science & Engineering. In: J. Arias, D. Azzolini, K. Basu, V. Dahl, M. Hecher, F. Pacenza, Z.G. Saribatur and S.C. Varanasi, eds. Workshop Proceedings of the 40th International Conference on Logic Programming (ICLP-WS 2024) co-located with the 40th International Conference on Logic Programming (ICLP 2024), Dallas, TX, USA, October 12th and 13th, 2024. CEUR-WS.org, CEUR Workshop Proceedings, vol. 3799. Available from: https://ceur-ws.org/Vol-3799/paper6PEG2.0.pdf.
Souza, S.M. and Bittencourt, R.A., 2019. Motivation and Engagement with PBL in an Introductory Programming Course. IEEE Frontiers in Education Conference, FIE 2019, Cincinnati, OH, USA, October 16-19, 2019. IEEE, pp.1–9. Available from: https://doi.org/10.1109/FIE43999.2019.9028419. DOI: https://doi.org/10.1109/FIE43999.2019.9028419
Szeredi, P., 2004. Teaching Constraints through Logic Puzzles. In: K.R. Apt, F. Fages, F. Rossi, P. Szeredi and J. Váncza, eds. Recent Advances in Constraints. Berlin, Heidelberg: Springer Berlin Heidelberg, Lecture Notes in Computer Science, vol. 3010, pp.196–222. Available from: https://doi.org/10.1007/978-3-540-24662-6_11. DOI: https://doi.org/10.1007/978-3-540-24662-6_11
Tiantong, M. and Teemuangsai, S., 2013. The Four Scaffolding Modules for Collaborative Problem-Based Learning through the Computer Network on Moodle LMS for the Computer Programming Course. International Education Studies, 6(5), pp.47–55. Available from: https://doi.org/10.5539/ies.v6n5p47. DOI: https://doi.org/10.5539/ies.v6n5p47
Tran, V.D., Kato, H. and Hu, Z., 2020. A Counterexample-Guided Debugger for Non-recursive Datalog. In: B.C.d.S. Oliveira, ed. Programming Languages and Systems. Cham: Springer International Publishing, Lecture Notes in Computer Science, vol. 12470, pp.323–342. Available from: https://doi.org/10.1007/978-3-030-64437-6_17. DOI: https://doi.org/10.1007/978-3-030-64437-6_17
Villadsen, J. and Jacobsen, F.K., 2021. Using Isabelle in Two Courses on Logic and Automated Reasoning. In: J.F. Ferreira, A. Mendes and C. Menghi, eds. Formal Methods Teaching. Cham: Springer International Publishing, Lecture Notes in Computer Science, vol. 13122 LNCS, pp.117–132. https://backend.orbit.dtu.dk/ws/portalfiles/portal/266397070/FMTea.pdf, Available from: https://doi.org/10.1007/978-3-030-91550-6_9. DOI: https://doi.org/10.1007/978-3-030-91550-6_9
Vosinakis, S., Anastassakis, G. and Koutsabasis, P., 2018. Teaching and learning logic programming in virtual worlds using interactive microworld representations. British Journal of Educational Technology, 49(1), pp.30–44. https://www.researchgate.net/publication/309733522, Available from: https://doi.org/10.1111/bjet.12531. DOI: https://doi.org/10.1111/bjet.12531
Vosinakis, S., Koutsabasis, P. and Anastassakis, G., 2014. A Platform for Teaching Logic Programming Using Virtual Worlds. IEEE 14th International Conference on Advanced Learning Technologies, ICALT 2014, Athens, Greece, July 7-10, 2014. IEEE Computer Society, pp.657–661. Available from: https://doi.org/10.1109/ICALT.2014.193. DOI: https://doi.org/10.1109/ICALT.2014.193
Wang, T., Liu, J.C. and Li, T., 2019. Design Variables for Self-Directed Learning in MOOC Environment. Journal of Educational Technology Development and Exchange, 12(1), pp.59–78. Available from: https://doi.org/10.18785/jetde.1201.04. DOI: https://doi.org/10.18785/jetde.1201.04
Wick, M.R. and Stevenson, D.E., 2006. On using Scheme to introduce Prolog. In: D. Baldwin, P.T. Tymann, S.M. Haller and I. Russell, eds. Proceedings of the 37th SIGCSE Technical Symposium on Computer Science Education, SIGCSE 2006, Houston, Texas, USA, March 3-5, 2006. ACM, pp.41–45. Available from: https://doi.org/10.1145/1121341.1121356. DOI: https://doi.org/10.1145/1121341.1121356
Wu, C.P. and Lo, P.H., 2013. The design principles of the worked examples. Workshop Proceedings of the 21st International Conference on Computers in Education, ICCE 2013. pp.192–195. Available from: https://library.apsce.net/index.php/ICCE/article/view/2951.
Zhang, Y., Wang, J., Bolduc, F., Murray, W.G. and Staffen, W., 2019. A Preliminary Report of Integrating Science and Computing Teaching Using Logic Programming. The Thirty-Third AAAI Conference on Artificial Intelligence, AAAI 2019, The Thirty-First Innovative Applications of Artificial Intelligence Conference, IAAI 2019, The Ninth AAAI Symposium on Educational Advances in Artificial Intelligence, EAAI 2019, Honolulu, Hawaii, USA, January 27 - February 1, 2019. AAAI Press, pp.9737–9744. Available from: https://doi.org/10.1609/AAAI.V33I01.33019737. DOI: https://doi.org/10.1609/aaai.v33i01.33019737
Zhu, M. and Bonk, C.J., 2022. Guidelines and strategies for fostering and enhancing self-directed online learning. Open Learning: The Journal of Open, Distance and e-Learning. Available from: https://doi.org/10.1080/02680513.2022.2141105. DOI: https://doi.org/10.1080/02680513.2022.2141105

Downloads
Submitted
Published
Issue
Section
License
Copyright (c) 2025 Serhiy O. Semerikov, Iryna S. Mintii, Natalia V. Moiseienko

This work is licensed under a Creative Commons Attribution 4.0 International License.
How to Cite
Accepted 2025-03-12
Published 2025-03-21