This paper describes Scala-Virtualized, which extends the Scala language and compiler with a small number of features that enable combining the benefits of shallow and deep embed...
Adriaan Moors, Tiark Rompf, Philipp Haller, Martin...
Peer assessment is a technique that has been successfully employed in a variety of academic disciplines, and which is considered to be effective in developing student’s higher c...
The Logo programming language implements a virtual drawing machine—the turtle machine. The turtle machine is well-known for giving students an intuitive understanding of fundame...
Test-driven development (TDD) is an agile software development strategy that addresses both design and testing. This paper describes a controlled experiment that examines the effe...
Dynamic memory management and the use of pointers are critical topics in teaching the C++ language. They are also some of the most difficult for students to grasp properly. The re...