Providing Recursive Functions to the Tangible Programming Environment for Smartphones

  • Yasushi KambayashiEmail author
  • Katsuki Tsukada
  • Munehiro Takimoto
Conference paper
Part of the Communications in Computer and Information Science book series (CCIS, volume 1034)


This paper reports an implementation of functions including recursive functions in a tangible programming environment. In the previous paper, we proposed a tangible programming environment which the users use on a smartphone. Our goal was to provide those who possess only a smartphone programming environment so that they can start learning programming without any preparations. It is well known that visual programming languages are suitable for young programmers. The most famous one is Scratch. When programming, users manipulate visual joining blocks that represent syntax elements. Today, almost everybody has a smartphone and it has significant computing power. On the other hand, what hinders users from widely using it in programming is its small screen. It is not suitable for fine operations because of the poor operability, which causes frequent recognition errors. Therefore we proposed a tangible programming environment where the user can program not in a screen but on a table by using physical cards. Scratch 2.0 and 3.0 provide recursive functions. Therefore we have expanded our previous implementation to provide functions including recursive functions. As the other syntax card, the user can define a function as a series of “function” card and “argument” cards, and can store entire function definition in one QR code. After creating the function QR code, the user can print that card and use it as a part of his or her program. Thus, the user of our programming environment can construct any program as the current Scratch user can without using personal computers.


Tangible programming Visual programming Smartphone Recursive function 


  1. 1.
    Ministry of Education, Culture, Sports, Science, and Technology: Guideline of the programming education in the stage of elementary schools (2018). (in Japanese)
  2. 2.
    Kambayashi, Y., Furukawa, K., Takimoto, M.: Design of tangible programming environment for smartphones. In: Stephanidis, C. (ed.) HCI 2017. CCIS, vol. 714, pp. 448–453. Springer, Cham (2017). Scholar
  3. 3.
    Resnick, M.: Scratch: programming for All. Commun. ACM 52(11), 60–67 (2009)CrossRefGoogle Scholar
  4. 4.
    Yashiro, T., Kazushi, M.: Material programming: a visual programming development environment with material. In: IPSJ Interaction (2014). (in Japanese)Google Scholar
  5. 5.
    Matsuzaki, S., Takimoto, M., Kambayashi, Y.: Design of tangible procedural programming of robots based on augmented reality. In: Proceedings of the 10th International Conference on Computer Graphics Theory and Applications, vol. 1. pp. 492–497 (2015)Google Scholar

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  • Yasushi Kambayashi
    • 1
    Email author
  • Katsuki Tsukada
    • 1
  • Munehiro Takimoto
    • 2
  1. 1.Department of Computer and Information EngineeringNippon Institute of TechnologySaitamaJapan
  2. 2.Department of Information SciencesTokyo University of ScienceNodaJapan

Personalised recommendations