Abstract:
In a world of ad-hoc networks, highly interconnected mobile devices and increasingly large supercomputer clusters, students need models of computation that help them think about dynamic and concurrent systems. Many of the tools currently available for introducing students to concurrency are di#cult to use and are not intrinsically motivating. To provide an authentic, hands-on, and enjoyable introduction to concurrency, we have ported occam-#, a language whose expressive powers are especially compelling for describing communicating dynamic reactive processes, to the LEGO Mindstorms.
Citations
|
2751
|
Communicating sequential processes
– Hoare
- 1978
|
|
373
|
Communicating and Mobile Systems: The π-Calculus
– Milner
- 1999
|
|
36
|
Using Autonomous Robotics to Teach Science and Engineering
– Beer, Chiel, et al.
- 1999
|
|
29
|
Circuits to Control: Learning Engineering by Designing LEGO Robots
– Martin
- 1994
|
|
28
|
Traffic Jams: Explorations in Massively Parallel Microworlds
– Turtles
- 1994
|
|
26
|
The SR Programming Language
– Andrews, Olsson
- 1993
|
|
26
|
The Kent Retargetable occam Compiler
– Welch, Wood
- 1996
|
|
19
|
Challenging the Computational Metaphor: Implications for How We Think
– Stein
- 1999
|
|
17
|
Dave Baum’s Definitive Guide to LEGO Mindstorms. APress
– Baum
- 2000
|
|
12
|
Measuring API Usability
– Clarke
- 2004
|
|
9
|
Handel-C Language Reference Guide
– Aubury, Page, et al.
- 1996
|
|
9
|
Dynamics and Pragmatics for High Performance Concurrency
– Barnes
- 2003
|
|
9
|
Communicating Mobile Processes
– Barnes, Welch
- 2004
|
|
7
|
The Transterpreter: A Transputer Interpreter
– Jacobsen, Jadud
- 2004
|
|
6
|
An ada interface for lego mindstorms
– Fagin
- 2000
|
|
6
|
A concurrency simulator designed for sophomore-level instruction
– KURTZ, CAI, et al.
- 1998
|
|
5
|
An integrated course on parallel and distributed processing
– unknown authors
- 1998
|
|
4
|
Ada/mindstorms 3.0: A computational environment for introductory robotics and programming
– Fagin
- 2003
|
|
4
|
Teamstorms as a theory of instruction
– Jadud
- 2000
|
|
4
|
Enhancing lisp instruction with RCXLisp and robotics
– Klassner
- 2004
|
|
3
|
Starving philosophers: experimentation with monitor synchronization
– Robbins
- 2001
|
|
2
|
Threadmentor: a pedagogical tool for multithreaded programming
– Carr, Mayo, et al.
- 2003
|
|
2
|
The pbForth Home Page
– Hempel
- 2004
|
|
2
|
A Laboratory for Teaching Parallel Computing on Parallel Structures
– Jim, Yang
- 1995
|
|
1
|
BrickOS for the LEGO Mindstorms. http://freshmeat.net/projects/brickos
– Noga
|
|
1
|
An innovative course in parallel computing
– Pan
|
|
1
|
Using robotics to motivate ’back door’ learning
– M
|
|
1
|
The ROBOLAB system
– Dacta
- 2000
|