Late Bound Function Integration via Modular Execution Engine

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional systems lack a mechanism to effectively balance the trade-off between runtime performance and ease of programming, as they are either early bound for faster execution or late bound for easier coding, without offering a middle ground.

Innovation Solution

A method and system for integrating late bound program functions into an external environment, allowing late bound calls to be made available within early bound or late bound environments, using a modular execution engine and interface mechanism to express late bound semantics in a compatible format, enabling the use of late bound function calls in early bound environments for performance-critical and difficult-to-program portions of applications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If early binding is used, then runtime execution speed is improved, but programming ease deteriorates

Engineering Contradiction:
Improveruntime execution speedVSAvoidprogramming ease
Core Design Contradiction:
SpeedVSEase of operation

Solution Approach 1:

The system segments the binding process into two distinct phases: early binding for performance-critical code paths and late binding for ease-of-programming code paths. This allows different parts of the same application to use different binding strategies, resolving the contradiction between speed and programming ease.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system introduces dynamic binding selection where the binding strategy (early or late) is determined at runtime based on the specific function call context. This dynamic approach allows the system to adapt between performance optimization and programming ease based on actual execution needs.

Inventive Principle:
Principle #15Dynamics

2Ease of operation

If late binding is used, then programming ease is improved, but runtime execution speed deteriorates

Engineering Contradiction:
Improveprogramming easeVSAvoidruntime execution speed
Core Design Contradiction:
Ease of operationVSSpeed

Solution Approach 1:

The system segments the codebase into performance-critical sections that use early binding and ease-of-programming sections that use late binding. This segmentation allows each section to be optimized for its specific requirements, resolving the contradiction between programming ease and execution speed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different binding strategies are applied locally to different parts of the application based on their specific requirements. Performance-critical functions use early binding while ease-to-program functions use late binding, allowing each local region to have the quality needed for its purpose.

Inventive Principle:
Principle #3Local quality

3Device complexity

If a unified binding mechanism is used, then system complexity is reduced, but adaptability deteriorates

Engineering Contradiction:
Improvesystem complexityVSAvoidadaptability to different binding strategies
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The system creates a universal binding mechanism that can handle both early binding and late binding functions through a single interface. This multi-functional approach allows the system to maintain low complexity while supporting multiple binding strategies, resolving the contradiction between simplicity and adaptability.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system introduces an intermediary layer that mediates between the caller and the bound function. This intermediary handles the complexity of binding strategy selection and execution, allowing the rest of the system to remain simple while gaining adaptability to different binding approaches.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS8046777B2Calling of late bound functions from an external program environment
Publication Date: 2011.10.25 MATHWORKS INC
  • US8046777B2 patent drawing
  • US8046777B2 patent drawing
  • US8046777B2 patent drawing

AI summary

The present invention is directed toward automatically integrating a late bound program language into an external environment. The external environment may be an early bound environment, a late bound environment or some combination thereof. Associated with the late bound program environment is a modular execution engine and an interface mechanism, wherein the interface mechanism is capable of expressing late bound semantics in a format compatible with the external environment.