IP Library Granted Patent US 7,530,080
Granted Patent B2
US 7,530,080 · App. 10/395,973 · Granted May 5, 2009

Implementation of alias preserving structural subtyping with precise types using transparent adapters

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,530,080
App. No.
10/395,973
Granted
May 5, 2009
Kind
B2
Abstract

A system and method for employing a programming language based on structural types on top of a nominal type runtime environment is disclosed. The system utilizes adapters and coercive subtyping to achieve precise typing while preserving aliasing. Furthermore, the system employs a universal value representation to achieve cross-assembly type equivalence.

Claims (14)

1. A system that employs structural types in a nominal typed runtime environment comprising:

a component that receives source elements defined in a structural type programming language;

a component that receives target elements defined in a nominal type runtime environment;

an adapter that facilitates communication between the source elements and the target elements and explicitly coerces a value on the target elements, the adapter comprises a wrappee, the wrappee includes a copy of the source elements; and

a memory operatively coupled to a processor retains at least a portion of the component that receives source elements, the component that receives target elements, the adapter, or a combination thereof.

2. The system of claim 1 , the runtime environment supports multiple languages.

3. The system of claim 2 , the runtime environment is platform independent.

4. The system of claim 1 , the adapter is a transparent two-way adapter.

5. The system of claim 1 , the adapter facilitates the use of aliases.

6. A computer-implemented system that employs structural types in a nominal typed runtime environment, comprising:

a component that receives source elements defined in a structural type programming language;

a component that receives target elements defined in a nominal type runtime environment, that supports multiple languages and is platform independent;

an adapter that facilitates communication between the source elements and the target elements and explicitly coerces a value on the target elements, the adapter is a transparent two-way adapter that facilitates the use of aliases and that comprises a wrappee, the wrappee includes a copy of the source elements; and

a processor operatively coupled to memory executes an instruction in relation to the component that receives source elements, the component that receives target elements, the adapter, or a combination thereof.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034541/0477 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 23, 2004
From: MEIJER, ERIK; SCHULTE, WOLFRAM; VENTER, BAREND H.; CHEN, CHIA-HSUN; LOVETT, CHRISTOPHER J.; WARREN, MATTHEW J.
To: MICROSOFT CORPORATION
Reel/Frame 015508/0450 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 25, 2003
From: MEIJER, ERIK; SCHULTE, WOLFRAM; VENTER, BAREND H.; CHEN, CHIS-HSUN; LOVETT, CHRISTOPHER J.; WARREN, MATTHEW J.
To: MICROSOFT CORPORATION
Reel/Frame 013914/0979 →