Abstract:
Methods, systems, and products are provided for thread-agile dynamic programming language (‘DPL’) program execution. Thread-agile DPL program execution may be carried out by receiving, in a message queue, a message for an instance of a DPL program and determining whether the host application has a stored state object for the instance of the DPL program identified by the message. If the host application has a stored state object for the DPL program, thread-agile DPL program execution may also carried out by retrieving the state object; preparing a thread available from a thread pool for execution of the instance of the DPL program in dependence upon the state object and an execution context for the instance of the DPL program; providing, to an execution engine for executing the DPL program, the state object and the prepared thread; and passing the message to the execution engine.
Abstract:
Graph oriented programming and execution. According to one embodiment of the invention, execution of a program includes automatically discovering and building a graph. The graph is to represent parent child relationships between combinations. Each combination is a specific method and a specific object-oriented instance. Based on a first of the combinations, other combinations are determined by iteratively discovering the child combinations for already discovered parent combinations. The graph is built of nodes coupled with links. Each of the plurality of combinations is identified by one of the nodes. Each of the parent child relationships is represented by one of the links. Execution of the program also includes executing the graph in an order indicated by the links until the root node is reached. Execution of each of the parent nodes includes executing the combination identified by that parent node to generate an output using the outputs of its child node(s).
Abstract:
Various technologies and techniques are disclosed for providing a common generic interface for numeric types in statically typed languages. The common generic interface defines basic arithmetic operations, thereby allowing basic arithmetic operations to be performed on the numeric types. The common generic interface provides support for overflow detection when a result of an operation being performed on a particular numeric type will result in an overflow situation when the operation does not fit within a range supported by the particular numeric types. The common generic interface provides support for one or more mathematical properties to be retrieved for a particular one of the numeric types being used in a particular circumstance.
Abstract:
A digital video recorder is disclosed. The digital video recorder includes at least one memory device, a plurality of communication access points for receiving at least one program play, an open application programming interface associated with the at least one memory device, and at least one correlation engine in communication with the open application programming interface. The plurality of applications correspondent to the open application programming interface allow a user to manipulate metadata associated with ones of the programs plays and the metadata relates to interframe interactivity with detailed aspects of the ones of the program plays. The at least one correlation engine provides for correlation among at least for the interframes of the program play to ones of the interframes of other ones of the program plays, and among the interframe interactivity to the interframes of the program play to interframe interactivity with the other ones of the interframes of the other ones of the program plays.
Abstract:
Methods and systems for managing property types, constraints, and other property validations in prototype-based dynamic programming languages, such as the JavaScript® programming language, are presented. A property definition is created for a target class by a programmer, and a properties class is automatically generated for the target class along with get and set methods to access and validate properties in the properties class. A properties class of a parent class can be automatically determined to exist and added such that the target class properties class inherits from the parent class properties class.
Abstract:
Embodiments of parallelization and/or instrumentation in a producer graph oriented programming framework have been presented. In one embodiment, a request to run an application program is received, wherein object-oriented source code of the application program includes methods and producer dependency declarations, wherein the producer dependency declaration for a given method identifies a set of zero or more producers with outputs that are an input to the given method, wherein a producer is at least an instance and a method associated with that instance. Further, execution of the application program may be parallelized based on dependency between producers of the application program using the runtime. In some embodiments, the application program is instrumented using the runtime.
Abstract:
A method of handling an exception in a parallel system includes constructing a task object, executing a method with the task object, and catching an exception with the task object during execution of the method. The exception is propagated in response to the task object becoming inaccessible without the exception having been observed.
Abstract:
Systems and methods are described that enhance a programming language by introducing support for declarative object identity in both class declarations and object literals. An exemplary system includes a memory that stores code associated with a computer program and a component coupled to the memory. The component is configured to access the code, to identify a variable in the code and a modifier associated with the variable and, responsive to identifying the variable, to use the variable to determine the identity of an object associated with the variable and to determine whether the object is equal to another object based on value semantics.
Abstract:
Embodiments of parallelization and/or instrumentation in a producer graph oriented programming framework have been presented. In one embodiment, a request to run an application program is received, wherein object-oriented source code of the application program includes methods and producer dependency declarations, wherein the producer dependency declaration for a given method identifies a set of zero or more producers with outputs that are an input to the given method, wherein a producer is at least an instance and a method associated with that instance. Further, execution of the application program may be parallelized based on dependency between producers of the application program using the runtime. In some embodiments, the application program is instrumented using the runtime.
Abstract:
Component domains used to define a binding between various components associated with the component domain. The component domain tracks the various services to be imported by each component, and tracks the various services exported by each component. At runtime, rather than at compile time, the various interrelations between the components are bound using the service import and export data. Accordingly, depending on the components available and their characteristics, the bindings may differ. This permits applications to be much more flexible.