JP5044139B2 - 移行互換性を維持したままのジェネリック型の具体化 - Google Patents
移行互換性を維持したままのジェネリック型の具体化 Download PDFInfo
- Publication number
- JP5044139B2 JP5044139B2 JP2006114767A JP2006114767A JP5044139B2 JP 5044139 B2 JP5044139 B2 JP 5044139B2 JP 2006114767 A JP2006114767 A JP 2006114767A JP 2006114767 A JP2006114767 A JP 2006114767A JP 5044139 B2 JP5044139 B2 JP 5044139B2
- Authority
- JP
- Japan
- Prior art keywords
- type
- determining
- argument
- actual
- specific
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000013508 migration Methods 0.000 title description 5
- 230000005012 migration Effects 0.000 title description 5
- 238000000034 method Methods 0.000 claims description 78
- 230000007246 mechanism Effects 0.000 claims description 25
- 230000004044 response Effects 0.000 claims description 23
- 238000004891 communication Methods 0.000 description 17
- 230000014509 gene expression Effects 0.000 description 9
- 230000003287 optical effect Effects 0.000 description 5
- 230000006399 behavior Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 239000004020 conductor Substances 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000005266 casting Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012966 insertion method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/43—Checking; Contextual analysis
- G06F8/436—Semantic checking
- G06F8/437—Type checking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
- G06F8/315—Object-oriented languages
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Computing Systems (AREA)
- Devices For Executing Special Programs (AREA)
- Stored Programmes (AREA)
Description
本発明の1実施例によれば、ジェネリック型を具体化する技術が提供される。本発明の1実施例の動作のハイレベルな概観を例示するフローチャートを図1に示してある。
図2A及び2Bは、本発明の1実施例に基づいて、ランタイムにおいてジェネリック型に対する実型引数を決定するための技術を例示するフローチャートである。例えば、JVMはランタイムにおいてこのような技術を実施することが可能である。本技術のステップは説明の便宜上特定の順番にあるものとして示してあるが、本技術のステップはこの例に示した特定の順番以外の順番で実施することが可能である。
クラスは、仮型パラメータと関連することが可能な唯一のプログラマチックエンティティではない。メソッドも仮型パラメータと関連することが可能である。以下のコードを例として考察する。
図3は本発明の1実施例を実現することが可能なコンピュータシステム300を例示したブロック図である。コンピュータシステム300は、情報交換を簡単化するためのバス302、及び情報を処理するためにバス302と結合されている1個又はそれ以上のプロセッサ304を包含している。コンピュータシステム300は、又、プロセッサ304に実行されるべき命令及び情報を格納するためにバス302と結合されている例えばランダムアクセスメモリ(RAM)又はその他のダイナミック記憶装置等のメインメモリ306を包含している。メインメモリ306は、又、プロセッサ304による命令の実行期間中に一次的な変数又はその他の中間情報を格納するために使用することが可能である。コンピュータシステム300は、更に、プロセッサ304に対する静的情報及び命令を格納するためにバス302へ結合されているリードオンリメモリ(ROM)308又はその他のスタチック記録装置を包含することが可能である。磁気ディスク又は光学ディスク等の格納装置310が設けられており且つ情報及び命令を格納するためにバス302へ結合されている。
302 バス
318 通信インターフェース
320 ネットワークリンク
322 ローカルネットワーク
324 ホストコンピュータ
326 インターネットサービスプロバイダ(ISP)
328 インターネット
Claims (22)
- 決定メカニズムと発生メカニズムと確立メカニズムとを含む装置におけるジェネリック型具体化方法において、
前記決定メカニズムが、ランタイム時の第一オブジェクトの利用に基づいて、前記第一オブジェクトがインスタンスであるジェネリック型の第一実型引数を決定するステップと、
前記発生メカニズムが、前記第一実型引数を表わすデータを発生するステップと、
前記確立メカニズムが、前記第一オブジェクトと前記データとの間の関連を確立するステップと、
を包含しており、
前記第一実型引数を決定するステップは、更に、まず前記第一実型引数が拘束型により拘束される不確定な型であることを確立することを包含しており、
前記第一実型引数を決定するステップは、更に、
第二オブジェクトが前記第一オブジェクト内に挿入されたことをランタイム時に決定し、
前記第二オブジェクトが前記第一オブジェクト内に挿入されたことの決定に応答して、
前記第二オブジェクトがインスタンスである特定の型を決定し、
前記特定の型及び前記拘束型の両方の最も特定的な上位型を決定し、
前記拘束型を前記最も特定的な上位型へアップデートする、
ステップを実施する、
ことを包含していることを特徴とする方法。 - 請求項1において、前記第一実型引数を決定するステップは、更に、
前記第一オブジェクトが、入力パラメータとして第二実型引数と関連しているジェネリック型である第二オブジェクトを受付けるメソッドへパスされたことをランタイム時に決定し、
前記第一オブジェクトが前記メソッドへパスされたことを決定することに応答して、前記第一実型引数を前記第二実型引数へアップデートする、
ことを包含している方法。 - 請求項1において、前記第一実型引数を決定するステップは、更に、
前記第一オブジェクトが、第二実型引数と関連しているジェネリック型である第二オブジェクトへ割当てられたことをランタイム時に決定し、
前記第一オブジェクトが前記第二オブジェクトへ割当てられたことを決定することに応答して、前記第一実型引数を前記第二実型引数へアップデートする、
ことを包含している方法。 - 請求項1において、前記第一実型引数を決定するステップは、更に、まず前記第一実型引数を第一上限型により拘束される不確定な型として確立することを包含している方法。
- 請求項4において、前記第一実型引数を決定するステップは、更に、
前記第一オブジェクトが、入力パラメータとして、第二実型引数と関連しているジェネリック型である第二オブジェクトを受付けるメソッドへパスされたことをランタイム時に決定し、
前記第一オブジェクトが前記メソッドへパスされたことを決定することに応答して、前記第二実型引数が第二上限型により拘束される不確定な型を特定するか否かを決定し、
前記第二実型引数が前記第二上限型により拘束される不確定な型を特定することを決定することに応答して、
前記第一上限型及び前記第二上限型の両方の最も特定的でない下位型を決定し、
前記第一上限型を前記最も特定的でない下位型へアップデートする、
ステップを実施する、
ことを包含している方法。 - 請求項4において、前記第一実型引数を決定するステップは、更に、
前記第一オブジェクトが第二実型引数と関連しているジェネリック型である第二オブジェクトへ割当てられたことをランタイム時に決定し、
前記第一オブジェクトが前記第二オブジェクトへ割当てられたことを決定することに応答して、前記第二実型引数が第二上限型により拘束される不確定な型を特定するか否かを決定し、
前記第二実型引数が前記第二上限型により拘束される不確定な型を特定することを決定することに応答して、
前記第一上限型及び前記第二上限型の両方の最も特定的でない下位型を決定し、
前記第一上限型を前記最も特定的でない下位型へアップデートする、
ステップを実施する、
ことを包含している方法。 - 請求項1において、前記第一実型引数を決定するステップは、更に、まず前記第一実型引数を第一下限型により拘束される不確定な型として確立することを包含している方法。
- 請求項7において、前記第一実型引数を決定するステップは、更に、
前記第一オブジェクトが第二実型引数と関連しているジェネリック型である第二オブジェクトを入力パラメータとして受付けるメソッドへパスされたことをランタイム時に決定し、
前記第一オブジェクトが前記メソッドへパスされたことを決定することに応答して、前記第二実型引数が第二下限型により拘束される不確定な型を特定するか否かを決定し、
前記第二実型引数が前記第二下限型により拘束される不確定な型を特定することを決定することに応答して、
前記第一下限型及び前記第二下限型の両方の最も特定的な上位型を決定し、
前記第一下限型を前記最も特定的な上位型へアップデートする、
ステップを実施する、
ことを包含している方法。 - 請求項7において、前記第一実型引数を決定するステップは、更に、
前記第一オブジェクトが第二実型引数と関連しているジェネリック型である第二オブジェクトへ割当てられたことをランタイム時に決定し、
前記第一オブジェクトが前記第二オブジェクトへ割当てられたことを決定することに応答して、前記第二実型引数が第二下限型により拘束される不確定な型を特定するか否かを決定し、
前記第二実型引数が前記第二下限型により拘束される不確定な型を特定することを決定することに応答して、
前記第一下限型及び前記第二下限型の両方の最も特定的な上位型を決定し、
前記第一下限型を前記最も特定的な上位型へアップデートする、
ステップを実施する、
ことを包含している方法。 - 決定メカニズムと発生メカニズムと確立メカニズムとを含む装置におけるジェネリックメソッド具体化方法において、
前記決定メカニズムが、ジェネリックメソッドの呼出しにおいて表わされていない第一実型引数に基づいて、前記ジェネリックメソッドの呼出しの第二実型引数をランタイム時に決定するステップであり、尚前記呼出しは前記実型引数を特定するものではないステップと、
前記発生メカニズムが、前記第二実型引数を表わすデータを発生するステップと、
前記確立メカニズムが、前記呼出しと前記データとの間の関連を確立するステップと、
ことを包含しており、
前記第二実型引数を決定するステップは、更に、まず前記第二実型引数が拘束型により拘束される不確定な型であることを確立することを包含しており、
前記第二実型引数を決定するステップは、更に、
前記第一実型引数が第一オブジェクトで使用されたことをランタイム時に決定し、
前記第一実型引数が前記第一オブジェクトで使用されたことの決定に応答して、
前記第一オブジェクトがインスタンスである特定の型を決定し、
前記特定の型及び前記拘束型の両方の最も特定的な上位型を決定し、
前記拘束型を前記最も特定的な上位型へアップデートする、
ステップを実施する、
ことを包含している方法。 - 命令の1つ又はそれ以上のシーケンスを担持するコンピュータにより読取可能な記録媒体であって、前記命令は、1個又はそれ以上のプロセッサにより実行される場合に、前記1個又はそれ以上のプロセッサをして、
ランタイム時の第一オブジェクトの利用に基づいて、前記第一オブジェクトがインスタンスであるジェネリック型の第一実型引数を決定し、
前記第一実型引数を表わすデータを発生し、
前記第一オブジェクトと前記データとの間の関連を確立する、
ステップを実施させ、
前記第一実型引数を決定することは、更に、まず前記第一実型引数が拘束型により拘束される不確定な型であることを確立することを包含しており、
前記第一実型引数を決定することは、更に、
第二オブジェクトが前記第一オブジェクト内に挿入されたことをランタイム時に決定し、
前記第二オブジェクトが前記第一オブジェクト内に挿入されたことの決定に応答して、
前記第二オブジェクトがインスタンスである特定の型を決定し、
前記特定の型及び前記拘束型の両方の最も特定的な上位型を決定し、
前記拘束型を前記最も特定的な上位型へアップデートする、
ステップを実施する、
ことを包含していることを特徴とするコンピュータにより読取可能な記録媒体。 - 請求項11において、前記第一実型引数を決定することは、更に、
前記第一オブジェクトが、第二実型引数と関連しているジェネリック型である第二オブジェクトを入力パラメータとして受付けるメソッドへパスされたことをランタイム時に決定し、
前記第一オブジェクトが前記メソッドへパスされたことを決定することに応答して、前記第一実型引数を前記第二実型引数へアップデートする、
ことを包含しているコンピュータにより読取可能な記録媒体。 - 請求項11において、前記第一実型引数を決定することは、更に、
前記第一オブジェクトが、第二実型引数と関連しているジェネリックタイプである第二オブジェクトへ割当てられたことをランタイム時に決定し、
前記第一オブジェクトが前記第二オブジェクトへ割当てられたことを決定することに応答して、前記第一実型引数を前記第二実型引数へアップデートする、
ことを包含しているコンピュータにより読取可能な記録媒体。 - 請求項11において、前記第一実型引数を決定することは、更に、まず前記第一実型引数が第一上限型により拘束される不確定な型であることを確立することを包含しているコンピュータにより読取可能な記録媒体。
- 請求項14において、前記第一実型引数を決定することは、更に、
前記第一オブジェクトが、第二実型引数と関連しているジェネリック型である第二オブジェクトを入力パラメータとして受付けるメソッドへパスされたことをランタイム時に決定し、
前記第一オブジェクトが前記メソッドへパスされたことを決定することに応答して、前記第二実型引数が第二上限型により拘束される不確定な型を特定するか否かを決定し、
前記第二実型引数が前記第二上限型により拘束される不確定な型を特定することを決定することに応答して、
前記第一上限型及び前記第二上限型の両方の最も特定的でない下位型を決定し、
前記第一上限型を前記最も特定的でない下位型へアップデートする、
ステップを実施する、
ことを包含しているコンピュータにより読取可能な記録媒体。 - 請求項14において、前記第一実型引数を決定することは、更に、
前記第一オブジェクトが、第二実型引数と関連しているジェネリックタイプである第二オブジェクトへ割当てられたことをランタイム時に決定し、
前記第一オブジェクトが前記第二オブジェクトへ割当てられたことを決定することに応答して、前記第二実型引数が第二上限型により拘束される不確定な型を特定するか否かを決定し、
前記第二実型引数が前記第二上限型により拘束される不確定な型を特定することを決定することに応答して、
前記第一上限型及び前記第二上限型の両方の最も特定的でない下位型を決定し、
前記第一上限型を前記最も特定的でない下位型へアップデートする、
ステップを実施する、
ことを包含しているコンピュータにより読取可能な記録媒体。 - 請求項11において、前記第一実型引数を決定することは、更に、まず前記第一実型引数を第一下限型により拘束される不確定な型であることを確立することを包含しているコンピュータにより読取可能な記録媒体。
- 請求項17において、前記第一実型引数を決定することは、更に、
前記第一オブジェクトが、第二実型引数と関連しているジェネリック型である第二オブジェクトを入力パラメータとして受付けるメソッドへパスされたことをランタイム時に決定し、
前記第一オブジェクトが前記メソッドへパスされたことを決定することに応答して、前記第二実型引数が第二下限型により拘束される不確定な型を特定するか否かを決定し、
前記第二実型引数が前記第二下限型により拘束される不確定な型を特定することを決定することに応答して、
前記第一下限型及び前記第二下限型の両方の最も特定的な上位型を決定し、
前記第一下限型を前記最も特定的な上位型であるようにアップデートする、
ステップを実施する、
ことを包含しているコンピュータにより読取可能な記録媒体。 - 請求項17において、前記第一実型引数を決定することは、更に、
前記第一オブジェクトが第二実型引数と関連しているジェネリックタイプのものである第二オブジェクトへ割当てられたことをランタイム時に決定し、
前記第一オブジェクトが前記第二オブジェクトへ割当てられたことを決定することに応答して、前記第二実型引数が第二下限型により拘束される不確定な型を特定するか否かを決定し、
前記第二実型引数が前記第二下限型により拘束される不確定な型を特定することを決定することに応答して、
前記第一下限型及び前記第二下限型の両方の最も特定的な上位型を決定し、
前記第一下限型を前記最も特定的な上位型であるようにアップデートする、
ステップを実施する、
ことを包含しているコンピュータにより読取可能な記録媒体。 - 命令の1つ又はそれ以上のシーケンスを担持するコンピュータにより読取可能な記録媒体において、前記命令は、1つ又はそれ以上のプロセッサにより実行される場合に、前記1つ又はそれ以上のプロセッサをして、
ジェネリックメソッドの呼出しにおいて表わされていない第一実型引数に基づいて、前記ジェネリックメソッドの呼出しの第二実型引数をランタイム時に決定し、尚前記呼出しは前記実型引数を特定するものではなく、
前記第二実型引数を表わすデータを発生し、
前記呼出しと前記データとの間の関連を確立する、
ステップを実施させ、
前記第二実型引数を決定することは、更に、まず前記第二実型引数が拘束型により拘束される不確定な型であることを確立することを包含しており、
前記第二実型引数を決定することは、更に、
前記第一実型引数が第一オブジェクトで使用されたことをランタイム時に決定し、
前記第一実型引数が前記第一オブジェクトで使用されたことの決定に応答して、
前記第一オブジェクトがインスタンスである特定の型を決定し、
前記特定の型及び前記拘束型の両方の最も特定的な上位型を決定し、
前記拘束型を前記最も特定的な上位型へアップデートする、
ステップを実施する、
ことを包含していることを特徴とするコンピュータにより読取可能な記録媒体。 - ランタイム時の第一オブジェクトの利用に基づいて、前記第一オブジェクトがインスタンスであるジェネリック型の第一実型引数を決定するメカニズム、
前記第一実型引数を表わすデータを発生するメカニズム、
前記第一オブジェクトと前記データとの間の関連を確立するメカニズム、
を有しており、
前記第一実型引数を決定することは、更に、まず前記第一実型引数が拘束型により拘束される不確定な型であることを確立することを包含しており、
前記第一実型引数を決定することは、更に、
第二オブジェクトが前記第一オブジェクト内に挿入されたことをランタイム時に決定し、
前記第二オブジェクトが前記第一オブジェクト内に挿入されたことの決定に応答して、
前記第二オブジェクトがインスタンスである特定の型を決定し、
前記特定の型及び前記拘束型の両方の最も特定的な上位型を決定し、
前記拘束型を前記最も特定的な上位型へアップデートする、
ステップを実施する、ことを特徴とする装置。 - ジェネリックメソッドの呼出しにおいて表わされていない第一実型引数に基づいて、前記ジェネリックメソッドの呼出しの第二実型引数をランタイム時に決定するメカニズムであり、尚前記呼出しは前記実型引数を特定するものではないメカニズム、
前記第二実型引数を表わすデータを発生するメカニズム、
前記呼出しと前記データとの間の関連を確立するメカニズム、
を有しており、
前記第二実型引数を決定することは、更に、まず前記第二実型引数が拘束型により拘束される不確定な型であることを確立することを包含しており、
前記第二実型引数を決定することは、更に、
前記第一実型引数が第一オブジェクトで使用されたことをランタイム時に決定し、
前記第一実型引数が前記第一オブジェクトで使用されたことの決定に応答して、
前記第一オブジェクトがインスタンスである特定の型を決定し、
前記特定の型及び前記拘束型の両方の最も特定的な上位型を決定し、
前記拘束型を前記最も特定的な上位型へアップデートする、
ステップを実施する、
ことを包含していることを特徴とする装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/109540 | 2005-04-18 | ||
US11/109,540 US7810077B2 (en) | 2005-04-18 | 2005-04-18 | Reifying generic types while maintaining migration compatibility |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2006302285A JP2006302285A (ja) | 2006-11-02 |
JP5044139B2 true JP5044139B2 (ja) | 2012-10-10 |
Family
ID=36954610
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006114767A Active JP5044139B2 (ja) | 2005-04-18 | 2006-04-18 | 移行互換性を維持したままのジェネリック型の具体化 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7810077B2 (ja) |
EP (1) | EP1722300A1 (ja) |
JP (1) | JP5044139B2 (ja) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7735070B2 (en) * | 2005-06-30 | 2010-06-08 | Oracle America, Inc. | Allowing non-generified methods to override generified methods |
US8225294B2 (en) * | 2006-04-27 | 2012-07-17 | Oracle America, Inc. | Method and apparatus for expressing and checking relationships between types |
US7778983B2 (en) * | 2007-03-06 | 2010-08-17 | Microsoft Corporation | Application migration file scanning and conversion |
US8955043B2 (en) * | 2010-01-27 | 2015-02-10 | Microsoft Corporation | Type-preserving compiler for security verification |
US8533671B2 (en) | 2010-06-07 | 2013-09-10 | Microsoft Corporation | Assigning type parameters |
US8813049B2 (en) * | 2010-06-30 | 2014-08-19 | Oracle International Corporation | Type inference of partially-specified parameterized types |
US10705804B2 (en) * | 2012-02-26 | 2020-07-07 | Logistics Research Centre SIA | Strongly typed metadata access in object oriented programming languages with reflection support |
US8843887B2 (en) * | 2012-08-31 | 2014-09-23 | Oracle International Corporation | Fast dispatch predicate for overloaded functions with generic type hierarchies that lack contravariance |
US8898632B2 (en) * | 2012-08-31 | 2014-11-25 | Oracle International Corporation | Dispatch predicate for overloaded functions using type intervals |
US9507572B2 (en) * | 2013-05-28 | 2016-11-29 | The Mathworks, Inc. | Time-based operations via textual code in a technical computing environment |
US9984175B2 (en) | 2015-09-30 | 2018-05-29 | International Business Machines Corporation | Mapping non-generic markup language elements to generic object-oriented programming language objects |
US10275226B2 (en) | 2015-10-23 | 2019-04-30 | Oracle International Corporation | Structural representation of generic type variable in a nominally typed virtual machine |
CN106886390B (zh) * | 2015-12-15 | 2021-06-18 | 大唐软件技术股份有限公司 | 一种Java对象生成和转换方法和Java对象生成和转换装置 |
US20180074797A1 (en) * | 2016-09-09 | 2018-03-15 | Hewlett Packard Enterprise Development Lp | Transform a data object in a meta model based on a generic type |
US10572275B2 (en) * | 2017-06-15 | 2020-02-25 | Microsoft Technology Licensing, Llc | Compatible dictionary layout |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06266561A (ja) * | 1993-03-11 | 1994-09-22 | Hitachi Ltd | プログラムの型検査方法およびシステム |
US5737607A (en) * | 1995-09-28 | 1998-04-07 | Sun Microsystems, Inc. | Method and apparatus for allowing generic stubs to marshal and unmarshal data in object reference specific data formats |
US6018628A (en) | 1998-06-16 | 2000-01-25 | Sun Microsystems, Inc. | Method of implementing parameterized types to be compatible with existing unparameterized libraries |
JP4662657B2 (ja) * | 2000-07-10 | 2011-03-30 | マイクロソフト コーポレーション | 統一データ型システムおよび方法 |
US20030131347A1 (en) * | 2001-10-12 | 2003-07-10 | Allison David S. | Method and apparatus for runtime binding of object members |
US7644402B1 (en) * | 2004-03-17 | 2010-01-05 | Sun Microsystems, Inc. | Method for sharing runtime representation of software components across component loaders |
US20060048095A1 (en) * | 2004-08-31 | 2006-03-02 | Microsoft Corporation | Local type alias inference system and method |
-
2005
- 2005-04-18 US US11/109,540 patent/US7810077B2/en active Active
-
2006
- 2006-04-11 EP EP06252016A patent/EP1722300A1/en not_active Withdrawn
- 2006-04-18 JP JP2006114767A patent/JP5044139B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
US7810077B2 (en) | 2010-10-05 |
US20060236315A1 (en) | 2006-10-19 |
EP1722300A1 (en) | 2006-11-15 |
JP2006302285A (ja) | 2006-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5044139B2 (ja) | 移行互換性を維持したままのジェネリック型の具体化 | |
US6018628A (en) | Method of implementing parameterized types to be compatible with existing unparameterized libraries | |
US7793256B2 (en) | Methods and systems for supporting and deploying distributed computing components | |
KR101795844B1 (ko) | 런타임 시스템 | |
US9916134B2 (en) | Methods and systems for accessing distributed computing components through the internet | |
US6286134B1 (en) | Instruction selection in a multi-platform environment | |
US7171646B2 (en) | Generating source code for object oriented elements with language neutral transient meta model and correlating display of names, symbols and code | |
US8448132B2 (en) | Systems and methods for modifying code generation templates | |
US9395963B1 (en) | System and method for accessing meta-data in a dynamically typed array-based language | |
US20050149914A1 (en) | Method of and system for sharing components between programming languages | |
US6895581B1 (en) | Replaceable classes and virtual constructors for object-oriented programming languages | |
JP2007012066A (ja) | ローカル及び匿名クラスに対するイントロスペクションサポート | |
US20090319554A1 (en) | Unified metadata for external components | |
JP2007012064A (ja) | 非ジェネリック化方法がジェネリック化方法をオーバーライドすることの許可 | |
US20090320007A1 (en) | Local metadata for external components | |
US7873951B1 (en) | Automated object delegation | |
US20060080644A1 (en) | Parameterization of programming structures | |
JP5165234B2 (ja) | ジャバ言語におけるメソッド参照のサポート | |
WO2008015110A2 (en) | Methods, apparatus and computer programs for modelling computer programs | |
US7673051B2 (en) | Resource usage conflict identifier | |
Vernon | D3. 2 Software Engineering Standards Manual | |
Mellor | Embedded systems in UML | |
Lee | Pro Objective-C |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090417 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20110113 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20110118 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120321 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120620 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20120703 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120713 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 5044139 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150720 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |