Class project on the development of a programming language

In this class project, students will have the opportunity to explore the fascinating world of programming language development by Mobile App Development KSA. Over the course of several sessions, students will work in teams to research, analyze, and reflect on the process of programming language development. The end product of this project will be the creation of their own programming language, which will solve a real-world problem or situation. Students will learn about the different stages of language development, from grammar definition to implementation and testing. This project will encourage collaborative work, independent learning, and practical problem solving.


development of a programming language

Goals


 

- Understand the fundamental concepts related to the development of a programming language. - Learn to define the grammar of a programming language. - Acquire skills in the design and implementation of a programming language. - Promote collaborative work and effective team communication. - Develop critical thinking and practical problem solving.



Requirements


 

- Programming fundamentals. - Basic knowledge of syntax and semantics of a programming language. - Familiarity with the software design process.



Resources


 

- Computers with Internet access. - Programming language development software (e.g. ANTLR, Lex & Yacc). - Books and reference materials on programming language development.



Activities


Session 1:


- The teacher introduces the project and explains the goals and expectations. - Students form work teams and select a real-world problem or situation that they wish to solve with their programming language. - Each team researches the stages of development of a programming language and defines the basic grammar of their language. - The teams present their grammar proposals and receive feedback from the teacher and their peers.



Session 2:


- Teams work on implementing their programming language. - Students research different techniques and tools for developing a language. - Each team implements the basic components of their language and tests its functionality. - Teams share their progress with the rest of the class and receive additional feedback.



Session 3:


- Teams finalize the implementation of their programming language. - Students perform extensive testing to verify the correct functioning of their language. - Each team presents and demonstrates their programming language to the class. - Students reflect on the development process of their language and discuss the challenges and lessons learned.



Assessment








































Criterion Excellent Outstanding Acceptable Low
Understanding the concepts Demonstrates a deep understanding of the concepts related to the development of a programming language. Demonstrates a good understanding of the concepts related to the development of a programming language. Demonstrates an adequate understanding of the concepts related to the development of a programming language. Does not demonstrate an adequate understanding of the concepts related to the development of a programming language.
Language implementation The implementation of the language is complete and functional, solving the proposed problem or situation. The implementation of the language is partially functional and shows an effort to solve the proposed problem or situation. The implementation of the language is incomplete and shows difficulties in solving the proposed problem or situation. The implementation of the language is poor and does not solve the proposed problem or situation.
Teamwork Collaborate effectively with the team, actively contributing at all stages of the project. Collaborates appropriately with the team, contributing in most stages of the project. Collaborates with the team in a limited way, showing little commitment during the project stages. Does not collaborate effectively with the team, affecting the progress of the project.
Presentation and reflection The presentation and reflection on the language development process are clear, detailed and demonstrate a deep understanding. The presentation and reflection on the language development process are clear and demonstrate adequate understanding. The presentation and reflection on the language development process are limited and show communication difficulties. The presentation and reflection on the language development process are insufficient and show little understanding.

 

Leave a Reply

Your email address will not be published. Required fields are marked *