Teaching Program Resources
Programming Language
General concept of programming on an interactive floor
Programming in the Go Lumi! application involves arranging virtual blocks with instructions into a single horizontal string of characters. We do this on an interactive floor, using light pens (interactive pens). A distinctive feature in this programming language of the hero is the lack of need to count fields and each step of the robot on the board. If we say "Go right", the robot will move until it encounters a virtual obstacle on the road, e.g., a maze wall.
Syntax and semantics of the programming language in the Go Lumi! application
Syntax - rules for creating a sequence of instructions
The main program sequence (otherwise known as the basic sequence) in the Go Lumi! application can consist of a maximum of twelve blocks with instructions.
In the sequence, two types of instruction blocks can be distinguished:
- simple instructions, expressed in the form of a single block with a command, e.g.,
Go down
,Pick up
,If you are on a conditional field, then go right
. - complex instructions, expressed in the form of one or several blocks with commands, e.g.,
Repeat the following sequence 3 times
,Perform the first function
. They relate to loops and functions.
Theoretically, for each board, a sequence can be composed consisting only of blocks with simple commands, without using loops and functions. Due to the imposed limitation of the number of blocks in the main sequence to twelve, in some tasks, more complex code structures, such as an iterative loop or defining a function, creating a helper sequence for it, must be used.
A sequence for a function can be defined using a maximum of six blocks with instructions. Two functions can be defined for the task. The beginning of the function definition is marked with the F1
or F2
block. Defining a function allows you to limit the use of space in the main sequence to one F1
or F2
block, with which we refer to the defined function.
When using an iterative loop, you should indicate the number of repetitions n, mark the beginning of the sequence with a loop block and the end of the sequence with an end loop block, which the robot is to repeat.
The rules for building code are summarized in the Table: Syntax of the language in the Go Lumi! application.
Table: Syntax of the language in the Go Lumi! application
Language Element | Application Rule |
---|---|
Length of the basic instruction sequence | Maximum of 12 blocks with instructions |
Length of the instruction sequence for functions | Maximum of 10 blocks within the main sequence. |
Defining a function | We mark the beginning of the auxiliary sequence for the defined function with a block or . We refer to the function in the main sequence with one block or . |
Defining an iterative loop | We use an additional 2 blocks in the main sequence. We mark the beginning of the loop instruction with a block and define the number of repetitions n for the instruction in the loop, and we mark the end of the loop instruction with a block . |
Semantics - the meaning of individual instructions
Explanations for the blocks with instructions are presented in the Table: Commands-blocks in the Go Lumi! application
Table: Commands-blocks in the Go Lumi! application
Symbol / Block | Meaning - instruction for the robot |
---|---|
Go right | |
Go left | |
Go up | |
Go down | |
If you are on a conditional field, then go right |
Working with the Go Lumi! application
After launching the Go Lumi! application, the main menu screen is visible. From here you can:
- select a level and start the game (the
Select level
button), - go to the application instructions (the
Instructions
button), - exit the application (the
Exit
button).
The start screen of the Go Lumi! application is shown in the figure below.
In the Go Lumi! application, you can choose from 110 game levels, and each level is one board to solve. Boards that have been solved are highlighted in orange. After selecting the game level, a white frame appears around the tile. You can now start the game by clicking the Start
button in the lower right corner of the screen or return to the main menu by selecting Main Menu
.
The level selection screen is shown in the figure below.
After familiarizing yourself with the instructions, you will learn, among other things, why there is a mess in Lumi's warehouse and what missions await you during the game. You will also find tips on creating code and using basic programming constructs, such as conditions, iterative loops, and functions. The view of the instructions for the task is shown in the figure below.
After selecting a level and starting the game, you go to the screen with the board view and code editing. On the top bar in the application window, there are buttons described in the Table: Basic application management options.
Table: Basic application management options.
The figure below shows the window view with an example board.
In the above figure, you can see that messages about the current state of the game are displayed on the bar just above the code editing.
To start creating code, click on the square with the plus in the bottom part of the screen and select the appropriate block. The names and examples of use of each block are described in the instructions.
To delete the selected block, hold the pen on it and then select the trash can icon.
After creating an algorithm with a solution for the board, check your solution by clicking the Run
button to run the program and the hero on the board. If the code you created is correct, you will move on to the next level of the game.
The figure below shows the menu available after clicking the pen on the empty block with the plus.
In the above figure, you can see that in the context menu we have all the basic instructions for building an algorithm for the robot's ride.
In the instructions inside the Go Lumi! application, examples of creating algorithms using conditional instruction
, Pick up and Drop
action, application of iterative loop
and functions
have been presented and described.
The figure below shows the window view with the instructions.
The above figure shows the game instruction window. To return to the game level selection, you need to select Main Menu.
Course Structure
The course consists of eleven lessons, see Table Lessons - scope of the curriculum. Each lesson is assigned a set of ten exercises of varying difficulty levels. Interactive floor exercises are based on the Go Lumi! application. Lessons have a proposed class scenario. Each board has one or more correct solutions. The teacher can choose from the proposed exercises or create their own exercise in the Go Lumi! application using the board editor. Students carry out the ready-made scenario or one modified by the teacher.
Table: Course Volume
Course Element | Quantity |
---|---|
Number of lessons in the course | 12 |
Number of exercises - boards for 1 lesson | 10 |
Number of difficulty levels for 1 lesson | 10 (1 board = 1 level) |
Total number of exercises - boards in the course | 110 |
Board design mode | 1 |
In the Table: Lessons - scope of the curriculum, the domains covered by each lesson are given. The age group for which the course scope is dedicated is also indicated.
Table: Lesson - scope of the curriculum
Lesson Number | Curriculum Scope / Domains (short notation) | Number of exercises - boards | Board Numbers | Age Group |
---|---|---|---|---|
1 | Sequences (S) | 10 | 1-10 | 7-14 years |
2 | Sequences, Conditions (S+C) | 10 | 11-20 | 7-14 years |
3 | Sequences, Actions (S+A) | 10 | 21-30 | 7-14 years |
4 | Sequences, Conditions, Actions (S+C+A) | 10 | 31-40 | 7-14 years |
5 | Sequences, Iterative Loops (S+L) | 10 | 41-50 | 7-14 years |
6 | Sequences, Iterative Loops, Conditions (S+L+C) | 10 | 51-60 | 7-14 years |
7 | Sequences, Iterative Loops, Conditions, Actions (S+L+C+A) | 10 | 61-70 | 7-14 years |
8 | Sequences, Functions (S+F) | 10 | 71-80 | 7-14 years |
9 | Sequences, Functions, Conditions (S+F+C) | 10 | 81-90 | 7-14 years |
10 | Sequences, Functions, Conditions, Actions (S+F+C+A) | 10 | 91-100 | 7-14 years |
11 | Sequences, Functions, Iterative Loops, Conditions, Actions (S+F+L+C+A) | 10 | 101-110 | 7-14 years |
In the Table Curriculum Scope - Lessons, the lesson numbers that cover the given material scope are given.
Table: Curriculum Scope - Lessons - Task Levels
Curriculum Scope / Domains | Lesson Number | Task Levels in the Go Lumi! application |
---|---|---|
Sequences | 1-11 | 1-110 |
Conditions | 2, 4, 6, 7, 9, 11 | 11-20, 31-40, 51-70, 81-110 |
Actions | 3, 4, 7, 10, 11 | 21-40, 61-70, 91-110 |
Loops | 5, 6, 7, 11 | 41-70, 101-110 |
Functions | 8, 9, 10, 11 | 71-110 |
In the Table: Curriculum Scope - Age Group, the suggested age of students for the teaching scope is indicated.
Table: Curriculum Scope - Age Group
Curriculum Scope | Age Group |
---|---|
Sequences | 7-14 years |
Conditions | 7-14 years |
Actions | 7-14 years |
Loops | 8-14 years |
Functions | 10-14 years |