Results 1 -
5 of
5
Functional Reactive Animation
, 1997
"... 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 condition ..."
Abstract
-
Cited by 174 (27 self)
- Add to MetaCart
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 e#ectively 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 di#erential equations.
Haskore Music Notation - An Algebra of Music
- Journal of Functional Programming
, 1995
"... We have developed a simple algebraic approach to music description and composition called Haskore. In this framework, musical objects consist of primitive notions such as notes and rests, operations to transform musical objects such as transpose and tempo-scaling, and operations to combine musical ..."
Abstract
-
Cited by 30 (7 self)
- Add to MetaCart
We have developed a simple algebraic approach to music description and composition called Haskore. In this framework, musical objects consist of primitive notions such as notes and rests, operations to transform musical objects such as transpose and tempo-scaling, and operations to combine musical objects to form more complex ones, such as concurrent and sequential composition. When these simple notions are embedded into a functional language such as Haskell, rather complex musical relationships can be expressed clearly and succinctly. Exploiting the algebraic properties of Haskore, we have furthermore defined a notion of literal performance (devoid of articulation) through which observationally equivalent musical objects can be determined. With this basis many useful properties can be proved, such as commutative, associative, and distributive properties of various operators. An algebra of music thus surfaces. 1 Introduction Traditional music notation (often called common practice no...
Haskore Music Tutorial
- In Second International School on Advanced Functional Programming
, 1996
"... this paper I assume that the reader is familar with the basics of functional programming and Haskell in particular. If not, I encourage reading at least A Gentle Introduction to Haskell [HF92] before proceeding. I also assume some familiarity with equational reasoning; an excellent introductory text ..."
Abstract
-
Cited by 13 (1 self)
- Add to MetaCart
this paper I assume that the reader is familar with the basics of functional programming and Haskell in particular. If not, I encourage reading at least A Gentle Introduction to Haskell [HF92] before proceeding. I also assume some familiarity with equational reasoning; an excellent introductory text on this is [BW88]. 2 The Architecture of Haskore
Life-Cycle Consumption and Labor Supply: An Explanation of the Relationship Between Income and Consumption over the Life-Cycle", merican Economic Review
- IEEE Trans. on Systems, Man, and Cybernetics - Part A
, 1974
"... Abstract—End-User computing is needed in creative artistic applications or integrated editing environments, where the activity cannot be planned in advance. Following [1], Concrete abstractions (abstractions from examples), are suggested as a new mode for function definition, appropriate for end-use ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
Abstract—End-User computing is needed in creative artistic applications or integrated editing environments, where the activity cannot be planned in advance. Following [1], Concrete abstractions (abstractions from examples), are suggested as a new mode for function definition, appropriate for end-user editor programmability. For certain applications, the direct, associative, not planned in advance character of concrete abstraction plays a qualitative role in the mere ability to specify abstractions. In this paper we propose to use concrete abstraction as a general tool for end-user programmability in editors. We distinguish two kinds of abstractions: value abstraction and structure abstraction, and explain how they can be combined. We describe a framework of historical editing that is based on a double view, in which the two abstraction kinds are combined. Finally, BOOMS [2], an implemented prototype for such an editing framework is described. BOOMS is a domain independent toolkit, with three sample instantiations. We believe that the proposed framework captures the conceptualization operation that characterizes creative, associative work types, and addresses the needs for end-user computing in integrated environments. Index Terms—Concrete abstraction, creative applications, music composition, end-user computing, historical editing, integrated environments. I.
Abstraction as a Means for End-User Computing
"... End-User computing is needed in creative artistic applications or integrated editing environments, where the activity cannot be planned in advance. Following [1], Concrete abstractions (abstractions from examples), are suggested as a new mode for function definition, appropriate for end-user editor ..."
Abstract
- Add to MetaCart
End-User computing is needed in creative artistic applications or integrated editing environments, where the activity cannot be planned in advance. Following [1], Concrete abstractions (abstractions from examples), are suggested as a new mode for function definition, appropriate for end-user editor programmability. For certain applications, the direct, associative, not planned in advance character of concrete abstraction plays a qualitative role in the mere ability to specify abstractions.

