Affiliation:
1. Microsoft Research, Graphics Group
2. Yale University, Dept. of Computer Science
Abstract
Fran
(Functional Reactive Animation) is a collection of data types and functions for composing richly interactive, multimedia animations. The key ideas in Fran are its notions of
behaviors
and
events
. Behaviors are time-varying, reactive values, while events are sets of arbitrarily complex conditions, carrying possibly rich information. Most traditional values can be treated as behaviors, and when images are thus treated, they become animations. Although these notions are captured as data types rather than a programming language, we provide them with a denotational semantics, including a proper treatment of real time, to guide reasoning and implementation. A method to effectively and efficiently perform
event detection
using
interval analysis
is also described, which relies on the partial information structure on the domain of event times. Fran has been implemented in Hugs, yielding surprisingly good performance for an interpreter-based system. Several examples are given, including the ability to describe physical phenomena involving gravity, springs, velocity, acceleration, etc. using ordinary differential equations.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Reference20 articles.
1. A functional animation starter-kit
2. P. Caspi N. Halbwachs D. Pilaud and J.A. Plaice. Lustre: A declarative language for programming synchronous systems. In 1 ith A CM Syrup. on Principles of Programming Languages January 1987. 10.1145/41625.41641 P. Caspi N. Halbwachs D. Pilaud and J.A. Plaice. Lustre: A declarative language for programming synchronous systems. In 1 ith A CM Syrup. on Principles of Programming Languages January 1987. 10.1145/41625.41641
3. The Canon Score Language
Cited by
197 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Runtime Verification in Real-Time with the Copilot Language: A Tutorial;Lecture Notes in Computer Science;2024-09-13
2. Using Functional Reactive Programming for Robotic Art: An Experience Report;Proceedings of the 12th ACM SIGPLAN International Workshop on Functional Art, Music, Modelling, and Design;2024-09-02
3. Stream Types;Proceedings of the ACM on Programming Languages;2024-06-20
4. Reactamole: functional reactive molecular programming;Natural Computing;2024-04-19
5. Learning Recovery Strategies for Dynamic Self-healing in Reactive Systems;Proceedings of the 19th International Symposium on Software Engineering for Adaptive and Self-Managing Systems;2024-04-15