Component Programming with Object-Oriented Signals

Subscribers:
344,000
Published on ● Video Link: https://www.youtube.com/watch?v=B--W5D8EQUg



Duration: 1:25:00
455 views
3


This talk presents a component glue code language called SuperGlue. Components in programs with interactive processing requirements, such as user interface programs, often interact by continuously viewing each others' volatile state. These kinds of interactions are difficult to express in most programming languages because the event handling code that reacts to changes in state is very repetitive. SuperGlue eliminates this repetitive glue code with time-varying value abstractions known as signals, which encapsulate event handling details through a standardized interface for communicating volatile state. The way signals are connected between components is analogous to how methods undergo virtual dispatch in object-oriented languages: programmers write rules that specify how an object's signals are connected according to its type and how it is connected to other objects. With this programming model, complicated component interactions can be concisely expressed in SuperGlue code. For example, the implementation of an email client in SuperGlue is substantially less complicated than a comparable implementation in Java. This talk will motivate and describe SuperGlue through examples, demonstrations of a prototype implementation, and a comparison-based evaluation with conventional programming languages.




Other Videos By Microsoft Research


2016-09-05Cords: 3D Curve Primitives that Wrap Around Geometry
2016-09-05Scalability and Extensibility in the Denali Virtual Machine Monitor [1/5]
2016-09-05Efficient and Robust Routing in the Presence of Competing Interests
2016-09-05Load Management and Fault-Tolerance in a Distributed Stream Processing System [1/2]
2016-09-05The Case for Technology for Developing Regions
2016-09-05Constructing Broad-Coverage Knowledge Repositories by Collecting Knowledge from Volunteers
2016-09-05Controlling Overlap in Content-Oriented XML Retrieval
2016-09-05Inferring Class Invariants in object-oriented languages via abstract interpretation
2016-09-05Technology Design to Foster Collaboration: A Multidisciplinary Approach
2016-09-05Towards Concept-Based Text Understanding and Mining
2016-09-05Component Programming with Object-Oriented Signals
2016-09-05On the Capacity of Information Networks
2016-09-05One-forms and Tutte-like Embeddings
2016-09-05Personal Passion and Professional Excellence ΓÇô You canΓÇÖt have one without the other!
2016-09-05Social Mobile Applications, Location, Privacy and the Capital of Nevada [1/16]
2016-09-05Search Engines Considered Harmful: In Search of an Unbiased Web Ranking
2016-09-05Science Friction: Where the Known Meets the Unknown
2016-09-05Concave utility functions on finite sets
2016-09-05Exploring Mars by 4-Wheel Drive
2016-09-05Computing with Selfish Agents [1/2]
2016-09-05Opportunities and Challenges in End-to-End Verification of Software Systems



Tags:
microsoft research