Picky: A New Introductory Programming Language

Francisco J. Ballesteros, Gorka Guardiola Múzquiz, and Enrique Soriano-Salvador

Volume 6, Issue 1 (July 2015), pp. 16–24

https://doi.org/10.22369/issn.2153-4136/6/1/2

PDF icon Download PDF

BibTeX
@article{jocse-6-1-2,
  author={Francisco J. Ballesteros and Gorka Guardiola M\'{u}zquiz and Enrique Soriano-Salvador},
  title={Picky: A New Introductory Programming Language},
  journal={The Journal of Computational Science Education},
  year=2015,
  month=jul,
  volume=6,
  issue=1,
  pages={16--24},
  doi={https://doi.org/10.22369/issn.2153-4136/6/1/2}
}
Copied to clipboard!

In the authors' experience the languages available for teaching introductory computer programming courses are lacking. In practice, they violate some of the fundamentals taught in an introductory course. This is often the case, for example, with I/O. Picky is a new open source programming language created specifically for education that enables the students to program according to the principles laid down in class. It solves a number of issues the authors had to face while teaching introductory courses for several years in other languages. The language is small, simple and very strict regarding what is a legal program. It has a terse syntax and it is strongly typed and very restrictive. Both the compiler and the runtime include extra checks to provide safety features. The compiler generates byte-code for compatibility and the programming tools are freely available for Linux, MacOSX, Plan 9 from Bell Labs and Windows. This paper describes the language and discusses the motivation to implement it and its main educational features.