Declarative Command Binding via Workflow Wrapper
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Declarative programming lacks the ability to explicitly specify low-level algorithms for achieving program goals, limiting its functionality in implementing commands and workflows effectively.
Innovation Solution
Implementing a method that declares input gestures and workflows in a declarative programming language, binding them through a command name, allowing for the execution of activities without specifying low-level algorithms, and using a workflow wrapper to integrate imperative code for additional functionality.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If declarative programming is used to define program goals without specifying low-level algorithms, then ease of operation and adaptability are improved, but device complexity increases due to the need for framework software to handle implementation details
Solution Approach 1:
The patent introduces a command binding system as an intermediary layer between declarative command definitions and workflow implementations. This binding mechanism allows commands to be associated with workflows without requiring the framework to interpret complex implementation details, thereby reducing the burden on framework software while maintaining ease of operation for defining program goals.
2Manufacturing precision
If low-level algorithms are explicitly specified in imperative programming, then manufacturing precision and measurement precision are improved, but ease of operation deteriorates due to increased programming complexity
Solution Approach 1:
The patent segments the programming task into two distinct parts: declarative command definitions that specify what needs to be done, and workflow implementations that contain the low-level algorithmic details. This segmentation allows programmers to focus on high-level goal definition without being burdened by implementation complexity, while the framework handles the precise algorithmic execution.
3Adaptability or versatility
If declarative programming is used to bind input gestures with workflows through command names, then adaptability and ease of operation are improved, but loss of information increases due to decoupling of references
Solution Approach 1:
The patent implements a feedback mechanism where the framework inspects workflows to determine if they are capable of performing useful work given the current application state. This feedback loop ensures that decoupled command-gesture bindings remain contextually appropriate, preventing information loss by verifying that workflows can actually execute their intended functions in the current context.
4Reliability
If workflows are inspected to determine capability of performing useful work, then reliability is improved, but loss of time increases due to additional analysis requirements
Solution Approach 1:
The patent performs workflow capability inspection as a preliminary action before command execution is attempted. By checking in advance whether a workflow is capable of performing useful work given the current application state, the system prevents futile execution attempts, thereby improving reliability while minimizing time loss through early validation rather than later failure detection.
Data Source
AI summary
Declaratively implementing a command. A method includes declaring an input gesture in a declarative programming language. Declaring an input gesture includes declaring one or more user performed actions. A command name is declared in a declarative programming language. A workflow is declared in a declarative programming language. Declaring a workflow includes declaring schedulable activities that are to be performed without specific specifications of the low level algorithms that are used to accomplish the activities. In an alternative example, workflows may be declared by declaring a wrapper to wrap imperative programming commands. The declared input gestures are bound with the declared workflow through the declared command name.

