Location of Repository

Programming with time : Cyber-physical programming with impromptu

By Andrew Sorensen and Henry Gardner


The act of computer programming is generally considered to be temporally removed from a computer program’s execution. In this paper we discuss the idea of programming as an activity that takes place within the temporal bounds of a real-time computational process and its interactions with the physical world. We ground these ideas within the context of livecoding – a live audiovisual performance practice. We then describe how the development of the programming environment “Impromptu” has addressed our ideas of programming with time and the notion of the programmer as an agent in a cyber-physical system

Topics: 080304 Concurrent Programming, 080305 Multimedia Programming, 080308 Programming Languages, concurrency, cyber-physical systems, impromptu, livecoding, time
Publisher: Association for Computing Machinery, Inc.
Year: 2010
DOI identifier: 10.1145/1932682.1869526
OAI identifier: oai:eprints.qut.edu.au:55800

Suggested articles



  1. (2003). A concurrent, on-the-fly audio programming language.
  2. (2010). A distributed memory for networked livecoding performance.
  3. (2007). aa-cell in practice: An approach to musical live coding’.
  4. (2005). Algorithms today notes on language design for just in time programming.
  5. (1986). Boxer: a reconstructible computational medium.
  6. (2009). Computing needs time.
  7. (2006). Concurrent models of computation for embedded software. System-on-chip: next generation electronics,
  8. (1990). Continuations and concurrency.
  9. (1999). Distributed simulation of timed petri nets.
  10. (2004). Frtime: Functional reactive programming in plt scheme. Computer science technical report.
  11. (1997). Functional reactive animation.
  12. (2000). Functional reactive programming from first principles.
  13. (2002). Functional reactive programming, continued.
  14. (1985). Generative communication in linda.
  15. (2004). Hacking perl in nightclubs. at http://www.
  16. (2005). Impromptu: an interactive programming environment for composition and performance.
  17. (1993). Just-in-time programming. Watch What I Do: Programming by Demonstration,
  18. (2004). Live coding in laptop performance.
  19. (2010). Livecoding screencasts,
  20. (2007). Living it up with a live programming language.
  21. (2003). Making reliable distributed systems in the presence of sodware errors.
  22. (2001). Manifesto for agile software development,
  23. (2002). Max at seventeen.
  24. (1980). Mindstorms: Children, computers, and powerful ideas.
  25. (1987). Motivating time as a first class entity.
  26. (1984). Moxie: A language for computer music performance.
  27. (1996). On the origin of objects / Brian Cantwell Smith.
  28. (2008). Oscillating rhythms,
  29. Programming as an experience: The inspiration for self. Object-Oriented Programming,
  30. (1978). Programming in an interactive environment: the“lisp”experience.
  31. (1966). Properties of a model for parallel computations: Determinancy, termination, queueing.
  32. (2003). Real-time programming and the big ideas of computational literacy.
  33. (2001). Real-Time Systems and Programming Languages: ADA 95, Real-Time Java, and Real-Time POSIX.
  34. (1960). Recursive functions of symbolic expressions and their computation by machine, part i.
  35. (2006). Rethinking programming.
  36. (2002). Rethinking the computer music language:
  37. (2009). Revisiting coroutines.
  38. (1992). Rfc 1305-network time protocol (version 3) specifi-cation. Implementation and Analysis,
  39. (2004). Scratch: a sneak preview [education].
  40. (1966). Simula: an algol-based simulation language.
  41. (1974). Smalltalk, a communication medium for children of all ages. Xerox Palo Alto Research Center,
  42. (2005). Subtext: Uncovering the simplicity of programming. In
  43. (1986). The cmu midi toolkit.
  44. (2003). The synchronous languages 12 years later.
  45. (1992). The treadmill: Real-time garbage collection without motion sickness.
  46. (2003). The yampa arcade.

To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.