Merging Data Structure Definitions Across Programming Languages

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Maintaining legacy applications written in older programming languages alongside newer applications in different languages is costly and challenging due to overlapping data access issues, where each application may have a different data definition for the same data, leading to potential functional discrepancies during conversion.

Innovation Solution

Generating a merged data structure definition that accommodates both legacy and newer applications by merging their respective memory layout definitions, allowing the data definitions to be unified and compatible across different programming languages, thereby ensuring correct functionality and reducing maintenance costs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If legacy applications and newer applications are maintained alongside each other in different programming languages, then functional requirements of both applications are met, but maintenance costs and system complexity increase due to overlapping data access issues and different data definitions

Engineering Contradiction:
Improvecompatibility between legacy and newer applicationsVSAvoidsystem maintenance complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent merges data structure definitions from multiple programming languages into a unified definition. The system generates a first memory layout definition from a legacy application's data structure definition in a first programming language, generates a second memory layout definition from a newer application's data structure definition in a second programming language, and then merges these definitions into a single merged data structure definition that both applications can use, eliminating the need to maintain separate definitions for each language

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent creates a universal merged data structure definition that serves multiple programming languages simultaneously. This single definition can be used by both legacy applications written in older languages and newer applications written in different languages, making the data access mechanism universal across the entire system and reducing the need for language-specific data definitions

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

2Reliability

If separate data structure definitions are maintained for each programming language, then language-specific requirements are satisfied, but the number of definitions and maintenance effort increase

Engineering Contradiction:
Improvelanguage-specific data access accuracyVSAvoidnumber of data structure definitions
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent combines multiple language-specific data structure definitions into a single merged definition. Instead of maintaining separate definitions for each programming language, the system generates memory layout definitions from each language's data structure definition and merges them into one unified definition that preserves the essential data access requirements for all languages

Inventive Principle:
Principle #5Merging (Combining)

3Ease of operation

If multiple data structure definitions are maintained for different programming languages, then each application can access data according to its language requirements, but the build environment must support multiple languages increasing costs

Engineering Contradiction:
Improvedata access for each applicationVSAvoidbuild environment complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent creates a universal merged data structure definition that can be used across the entire build environment regardless of the programming language. This single definition eliminates the need for the build environment to maintain and support multiple separate data structure definitions for different languages, simplifying the build environment while still enabling data access for all applications

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

Data Source

PatentUS11630655B2Merging data structure definitions
Publication Date: 2023.04.18 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11630655B2 patent drawing
  • US11630655B2 patent drawing
  • US11630655B2 patent drawing

AI summary

Embodiments are disclosed for merging data structure definitions. The techniques include generating a first memory layout definition based on a first data structure definition that is written in a first programming language. The techniques further include generating a second memory layout definition based on a second data structure definition that is written in a second programming language. Additionally, the techniques include merging the first memory layout definition and the second memory layout definition into a merged memory layout definition. Further, the techniques include generating a merged data structure definition based on the merged memory layout definition.