Skip to main content

Functional implementations of continuous modeled animation

  • Conference paper
  • First Online:
Principles of Declarative Programming (ALP 1998, PLILP 1998)

Abstract

Animation is a temporally continuous phenomenon, but is typically programmed in terms of a discrete sequence of changes. The use of discreteness serves to accommodate the machine that is presenting an animation, rather than the person modeling an animation with the help of a computer. Using a continuous model of time for animation allows for natural specification, avoiding some artificial details, but is difficult to implement with generality, robustness and efficiency. This paper presents and motivates continuous modeled animation, and sketches out a naive functional implementation for it. An examination of some of the practical problems with this implementation leads to several alternate representations, all of which have difficulties in themselves, some quite subtle. We hope that the insights and techniques discussed in this paper lead to still better representations, so that animation may be specified in natural terms without significant loss of performance.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Kavi Arya. A functional approach to animation. Computer Graphics Forum, 5(4):297–311, December 1986.

    MathSciNet  Google Scholar 

  2. John Backus. Can programming be liberated from the von Neumann style? Comm. ACM, 8:613–641, 1978.

    Article  MathSciNet  Google Scholar 

  3. Byron Cook and John Launchbury. Disposable memo functions (extended abstract). In Proceedings of the 1997 ACM SIGPLAN International Conference on Functional Programming, page 310, Amsterdam, The Netherlands, June 1997.

    Google Scholar 

  4. Conal Elliott. Modeling interactive 3D and multimedia animation with an embedded language. In The Conference on Domain-Specific Languages, pages 285–296, Santa Barbara, California, October 1997. USENIX. WWW version at http://-www.research.microsoft.com/~conal/papers/dsl97/dsl97.html.

    Google Scholar 

  5. Conal Elliott. Composing reactive animations. Dr. Dobb's Journal, pages 18–33, July 1998. Expanded version with animated GIFs: http://www.research.-microsoft.com/~conal/fran/tutorial.htm,tutorialArticle.zip.

    Google Scholar 

  6. Conal Elliott. From functional animation to sprite-based display (expanded version). Technical Report MSR-TR-98-28, Microsoft Research, July 1998. http://-www.research.microsoft.com/~conal/papers/spritify/long.ps.

    Google Scholar 

  7. Conal Elliott. Functional implementations of continuous modeled animation (expanded version). Technical Report MSR-TR-98-25, Microsoft Research, June 1998. http://www.research.microsoft.com/~conal/papers/plilpalp98/long.ps.

    Google Scholar 

  8. Conal Elliott and Paul Hudak. Functional reactive animation. In Proceedings of the 1997 ACM SIGPLAN International Conference on Functional Programming, pages 263–273, Amsterdam, The Netherlands, 9–11 June 1997.

    Google Scholar 

  9. John Peterson et. al. Haskell 1.3: A non-strict, purely functional language. Technical Report YALEU/DCS/RR-1106, Department of Computer Science, Yale University, May 1996. Current WWW version at http://haskell.org/report/index.html.

    Google Scholar 

  10. John Hughes. Lazy memo functions. In J. P. Jouannaud, editor, Functional Programming Languages and Computer Architecture, volume 201 of LNCS, pages 129–146. Springer Verlag, September 1985.

    Google Scholar 

  11. Adobe Systems Incorporated. POSTSCRIPT Language: Tutorial and CookBook. Addison-Wesley Publishing Company, Inc, 1991.

    Google Scholar 

  12. Simon L. Peyton Jones, Cordelia V. Hall, Kevin Hammond, Will Partain, and Philip Wadler. The Glasgow Haskell compiler: a technical overview. In Proc. UK Joint Framework for Information Technology (JFIT) Technical Conference, July 93.

    Google Scholar 

  13. Arch D. Robinson. The Illinois functional programming interpreter. In Proceedings SIGPLAN '87 Symposium on Interpreters and Interpretive Techniques, pages 64–73. ACM, ACM, June 1987.

    Google Scholar 

  14. Simon Thompson. A functional reactive animation of a lift using Fran. Technical Report 5-98, University of Kent, Computing Laboratory, May 1998. http://www.cs.ukc.ac.uk/pubs/1998/583/index.html.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Catuscia Palamidessi Hugh Glaser Karl Meinke

Rights and permissions

Reprints and permissions

Copyright information

© 1998 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Elliott, C. (1998). Functional implementations of continuous modeled animation. In: Palamidessi, C., Glaser, H., Meinke, K. (eds) Principles of Declarative Programming. ALP PLILP 1998 1998. Lecture Notes in Computer Science, vol 1490. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0056621

Download citation

  • DOI: https://doi.org/10.1007/BFb0056621

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-65012-6

  • Online ISBN: 978-3-540-49766-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics