Concise Expression Classes for Interpreted Languages

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In interpreted object-oriented programming languages, there is no pre-processor to check if all components of a program exist before runtime, making it difficult to ensure that required data and functions are available, leading to complex and error-prone code expressions.

Innovation Solution

The introduction of concise expression classes that include operator overloading to return an instance of a void object when data or objects do not exist, allowing expressions to be executed without crashing the software application by ensuring non-existent objects do not cause errors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If extensive testing constructs are used to check for existence of data and functions, then reliability is improved, but device complexity increases

Engineering Contradiction:
ImprovereliabilityVSAvoidcode complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary existence-checking mechanism that automatically verifies whether data or functions exist before execution. This mediator handles the complexity of existence checks internally, allowing the main code to remain simple while reliability is maintained through automatic checking.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent performs existence checks preliminarily before the actual code execution. By checking for the existence of data and functions in advance and preparing appropriate handling strategies, the system ensures reliable execution without requiring extensive testing constructs within the main code flow.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If pre-processor macros are used to embed tests, then reliability is improved, but ease of operation deteriorates

Engineering Contradiction:
ImprovereliabilityVSAvoidcode readability
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent extracts the complexity of existence checking and test embedding from the main code into separate pre-processor mechanisms and runtime checking systems. This allows the main code to maintain high readability while reliability is ensured through the extracted checking logic that operates transparently in the background.

Inventive Principle:
Principle #2Taking out (Extraction)

3Ease of operation

If no pre-processor is used in interpreted languages, then ease of operation is improved, but reliability deteriorates

Engineering Contradiction:
Improvecode simplicityVSAvoidreliability
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent introduces an intermediary runtime checking system that operates in interpreted languages without requiring a pre-processor. This mediator automatically checks for the existence of data and functions during execution, maintaining code simplicity while ensuring reliability through transparent existence verification.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS8549485B2Method and system for concise expression of optional code snippets in interpreted languages
Publication Date: 2013.10.01 RED HAT INC
  • US8549485B2 patent drawing
  • US8549485B2 patent drawing
  • US8549485B2 patent drawing

AI summary

A method and apparatus for the concise expression of optional code snippets in interpreted object-oriented programming language software applications is described. In one embodiment, the method includes defining a first class where the first class is a concise expression class that includes one or more objects. The method may also include including the concise expression class in a second class that includes one or more objects of the second class. The method may also include executing an expression in a software application to evaluate an object of the second class and returning an instance of an object of the concise expression class when data associated with the object of the second class does not exist within the software application.