JP2002116917A - オブジェクト指向型プログラミング言語によるソース・プログラムをコンパイルするコンパイラ - Google Patents
オブジェクト指向型プログラミング言語によるソース・プログラムをコンパイルするコンパイラInfo
- Publication number
- JP2002116917A JP2002116917A JP2000305605A JP2000305605A JP2002116917A JP 2002116917 A JP2002116917 A JP 2002116917A JP 2000305605 A JP2000305605 A JP 2000305605A JP 2000305605 A JP2000305605 A JP 2000305605A JP 2002116917 A JP2002116917 A JP 2002116917A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- class
- statement
- parallel
- execution
- 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.)
- Withdrawn
Links
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/45—Exploiting coarse grain parallelism in compilation, i.e. parallelism between groups of instructions
Abstract
ソースプログラムでも並列処理できるようにコンパイル
する。 【解決手段】並列処理を実現するには、ソースプログラ
ムで指定されたオブジェクト1000の他に、並列化指示文
で指示されたクラス変数又は並列実行対象の実行文に含
まれるクラス型変数のために、当該クラスの並列化処理
用オブジェクト1010,1020を生成しなければならない。
また並列処理終了時には並列化処理用オブジェクトを消
滅させる。そのためコンパイラは、並列実行対象の実行
文又は並列化指示文にクラス型の変数が含まれる場合
に、並列実行対象の実行文又は並列化指示文により並列
化される実行文の前に当該クラスによるオブジェクトの
構築命令ルーチンを呼び出す命令を生成し、並列実行対
象の実行文又は並列化指示文により並列化される実行文
の後にそのクラスによるオブジェクトの消滅命令ルーチ
ンを呼び出す命令を生成する。
Description
し、より詳しくは、オブジェクト指向型プログラミング
言語により書かれたソース・プログラムをコンパイルす
るコンパイラに関する。
やC++などのオブジェクト指向型プログラミング言語
は、プログラムの部品化等の理由により多くのプログラ
ム開発で用いられている。また、複数のCPU(Centra
l Processing Unit)を有する計算機も、CPU価格の
下落等の理由で普及してきている。
指向型プログラミング言語で書かれたソース・プログラ
ムから生成されたオブジェクト・プログラムを複数のC
PUを有する計算機で実行する場合も生ずるが、従来で
は、複数のCPUの能力を引き出すような並列化が行わ
れていなかった。
向型プログラミング言語で書かれたソース・プログラム
でも並列処理できるようにコンパイルすることができる
コンパイラ技術を提供することである。
は、並列化指示文で指示されたクラス変数又は並列実行
対象の実行文に含まれるクラス型変数のために、ソース
・プログラムにおいて指定されたオブジェクト(図1の
元のオブジェクト1000)の他に、当該クラスのオブ
ジェクト(図1の並列化処理用オブジェクト1010及
び1020)を元のオブジェクト1000から生成しな
ければならない。また、並列処理終了時には、当該オブ
ジェクトを消滅させなければならない。
グ言語によるソース・プログラムをコンパイルするコン
パイラは、並列実行対象の実行文又は並列化指示文にク
ラス型の変数が含まれる場合には、並列実行対象の実行
文又は並列化指示文により並列化される実行文の前に当
該クラスによるオブジェクトの構築命令ルーチンを呼び
出す命令を生成し、記憶装置に格納するステップと、並
列実行対象の実行文又は並列化指示文にクラス型の変数
が含まれる場合には、並列実行対象の実行文又は並列化
指示文により並列化される実行文の後に当該クラスによ
るオブジェクトの消滅命令ルーチンを呼び出す命令を生
成し、記憶装置に格納するステップとをコンピュータに
実行させる。
生成されるため、並列処理が実現されるようになる。ま
た、不要になれば生成されたオブジェクトは消滅する。
のコンピュータで実行されれば当該コンピュータはコン
パイル装置となる。また、コンパイラは、例えばフロッ
ピー(登録商標)ディスク、CD−ROM、光磁気ディ
スク、半導体メモリ、ハードディスク等の記憶媒体又は
記憶装置に格納される。また、コンパイラの処理途中の
中間的なデータは、コンピュータのメインメモリなどの
記憶装置に格納される。
ブロック図を図2に示す。コンピュータ100は、オブ
ジェクト指向型プログラミング言語により記述されたソ
ース・プログラムを格納したソースプログラム・ファイ
ル110に対してコンパイル処理を行うコンパイラ12
0を実行する。コンパイラ120の処理結果は、オブジ
ェクトコード・ファイル130として出力される。この
オブジェクトコード・ファイル130は、複数のCPU
を有する並列コンピュータで実行される。なお、並列コ
ンピュータには、様々な形式のものが存在しているが、
以下ではOpenMPAPI(Application Program I
nterface)を前提としたプログラムの例を示すので、本
実施の形態では共有メモリ型の並列コンピュータが対象
となる。
ムをコンパイラ内の処理のための中間言に変換するフロ
ントエンド部122と、フロントエンド部122により
生成された中間言に対して並列化のための処理を実施す
る並列化処理部124と、並列化処理部124の処理結
果に基づきオブジェクトコードを生成するオブジェクト
コード生成部126とが含まれる。なお、コンパイラ1
20においては必要に応じてコード生成の前に最適化処
理などが実行される。
する。本実施の形態では、従来の中間言生成処理に加え
図4に示すような処理を追加して、従来とは異なる中間
言(図3)を生成する。従来においては、クラス毎に、
当該クラスを特定するためのクラス情報域10と、当該
クラス情報域に含まれる型情報域指標12から指し示さ
れる、当該クラスの型(タイプ)情報を格納する型情報
域20とが設けられていた。型情報域20には、当該ク
ラスのコンストラクタ(クラスの構築命令ルーチン)と
デストラクタ(クラスの消滅命令ルーチン)の情報が格
納される。本実施の形態では、OpenMPのAPIに
従って記述される並列化指示文の節(clause)にクラス
が指定されている場合にはそのクラスについて、自動並
列化処理を行う場合には全てのクラスについて、以下の
ような情報が従来の中間言に追加される。
型情報域20には当該構築・消滅命令情報域30を指し
示す構築・消滅命令情報域指標22とを追加する。構築
・消滅命令情報域30には、構築命令ルーチン40を指
し示す構築命令基点32と、消滅命令ルーチン42を指
し示す消滅命令基点34とが設けられる。
る。
ものであって、通常は含まれない。
プログラムであって、第1行はAという構造体を定義す
る部分である。第2行はmem1及びmem2という整数型のメ
ンバを定義する文である。第3行は、コンストラクタA
()を定義する文である。第4行はコピーコンストラク
タである。第5行はデストラクタ〜A()である。第6
行はaddというメソッドを定義する文である。第7行
は、上のような構造体のクラス変数stを定義する部分
である。第8行はデストラクタを定義する文である。第
9行はメインプログラムmainの開始部分である。第10
行は、OpenMPによる並列化指示文(#pragma omp
parallel)である。なお、第10行のforは以下のfo
rループを並列化することを示しており、private(st)
はスレッド毎にクラス変数stがプライベートであるこ
とを示している。第11行はI=0からI=10000
0000までIを1ずつインクリメントするforルー
プを規定している。第12行は第6行のクラスstのa
ddメソッドが示されている。第13行はforループ
の終わりを、第14行はメインプログラムの終わりを規
定している。
めには、元のオブジェクトの他に並列化処理用オブジェ
クトを生成・消滅するために、コンストラクタであるs
t.mem1=0及びst.mem2=1と、デストラクタであるst.〜
A()が並列化処理用オブジェクト毎に必要となる。そし
て、st.addというメソッドが各並列化処理用オブジェク
トで実行される。各並列化処理用オブジェクトにおける
forループの範囲は、並列化処理用オブジェクトの数
で決まる。
は、オブジェクト情報域10でクラスstを特定する。
また、型情報域20に、コンストラクタA()及びデス
トラクタ〜A()の情報を含む構造体Aの情報を格納す
る。さらに、構築・消滅命令情報域30に、構築命令ル
ーチン40(コンストラクタ)であるst.mem1=0とst.me
m2=1への構築命令基点32と、消滅命令ルーチン42
(デストラクタ)であるst.〜A()への消滅命令基点34
とが格納される。
るための処理フローを図4を用いて説明する。最初に、
自動並列化処理を行うか否か判断する(ステップS
1)。自動並列化処理を行うか否かは、例えばコンパイ
ラ120に対するユーザの設定がなされているか否かで
判断する。もし、自動並列化処理を行う場合には、現在
の処理対象の文にクラス型変数が存在するか判断する
(ステップS13)。クラス型である場合にはステップ
S7に移行する。一方、クラス型でない場合には元の処
理に戻る。
い場合には、並列化指示文の使用が許されているか判断
する(ステップS3)。並列化指示文は例えばOpen
MPによる並列化指示文であり、並列化指示文の使用が
許されているか否かは、例えばコンパイラ120に対す
るユーザの設定などにより判断する。もし、並列化指示
文の使用が許されていない場合には、元の処理に戻る。
一方、並列化指示文の使用が許可されている場合には、
並列化指示文の節に指定された変数がクラス型か否かを
判断する(ステップS5)。表1の例では、節はprivat
eで、変数はstでありクラス型である。クラス型でな
ければ、元の処理に戻る。
クラス型である場合には、当該クラスに対して構築・消
滅命令情報域30を確保し、型情報域20内に構築・消
滅命令情報域指標22を設定する(ステップS7)。そ
して、型情報域20から構築命令ルーチン40と、消滅
命令ルーチン42とを取り出し(ステップS9)、構築
・消滅命令情報域30内に、構築命令ルーチン40に対
する構築命令基点32と、消滅命令ルーチン42に対す
る消滅命令基点34とを設定する(ステップS11)。
生成される。図3に示されるような中間言が記憶装置に
用意されていれば、次の並列化処理を高速且つ確実に行
うことができるようになる。
おいて追加される部分の処理フローを図5に示す。ま
ず、並列化処理及び自動並列化処理において、並列化指
示文の節に指定された変数がクラス型か、若しくは並列
対象の実行文にクラス型変数が含まれているか判断する
(ステップS21)。もし、並列化指示文の節に指定さ
れた変数がクラス型でなく且つ並列対象の実行文にクラ
ス型変数が含まれていない場合には元の処理に戻る。一
方、並列化指示文の節に指定された変数がクラス型であ
る場合、又は並列対象の実行文にクラス型変数が含まれ
る場合には、クラス型変数の中間言のクラス情報域10
にある型情報域指標12から型情報域20を取り出す
(ステップS23)。その型情報域20の構築・消滅命
令情報域指標22から、構築・消滅命令情報域30を取
り出す(ステップS25)。
命令基点32と消滅命令基点34を取り出す(ステップ
S27)。そして、構築命令基点32がNULL(情報
なし)であるか判断する(ステップS29)。もし、N
ULLであればステップS33にスキップする。NUL
Lでなければ、並列化される実行文の先頭に構築命令基
点32が指す構築命令ルーチン40を呼び出す命令を生
成し、記憶装置に格納する(ステップS31)。
なし)であるか判断する(ステップS33)。もし、N
ULLであれば元の処理に戻る。NULLでなければ、
並列化される実行文の最後に消滅命令基点34が指す消
滅命令ルーチン42を呼び出す命令を生成し、記憶装置
に格納する(ステップS35)。そして元の処理に戻
る。
れた命令群と通常コンパイラ120の並列化処理部12
4で生成される命令群とを用いて、オブジェクトコード
生成部126がオブジェクトコードを生成し、オブジェ
クトコード・ファイル130に格納する。なお上でも説
明したが、並列化処理部124の後に他の処理(例えば
最適化処理)が実施され、その最適化処理後の命令群に
対してオブジェクトコードを生成する場合もある。
うに並列化処理用オブジェクトを生成するための構築命
令ルーチン42を呼び出す命令に対応するオブジェクト
コードと、消滅させるための消滅命令ルーチン44を呼
び出す命令に対応するオブジェクトコードとが含まれ
る。しかし、オブジェクトコード実行時に生成される並
列化処理用オブジェクトの数は、オブジェクトコードを
実行する並列コンピュータの能力などに依存するためこ
の時点では不明である。よって、構築命令ルーチン42
を呼び出す命令及び消滅命令ルーチン44を呼び出す命
令は並列化処理用オブジェクトの数分生成されるわけで
はない。
本発明はこれに限定されるものではない。例えば、図5
のステップS29及びS31とステップS33及びS3
5とは順番を入れ替えることが可能である。また、図1
のコンピュータ100がネットワークに接続されてお
り、ソースプログラム・ファイル110が他のコンピュ
ータから送信されてきたり、オブジェクトコード・ファ
イル130が他のコンピュータへ送信されるような場合
もある。他のコンピュータは並列コンピュータである場
合もある。上ではOpenMPを前提としたプログラム
の例を示したが、その他の規格等に従ったプログラムで
あっても良い。
ング言語によるソース・プログラムをコンパイルするコ
ンパイラを格納した記録媒体であって、前記コンパイラ
は、コンピュータに、並列実行対象の実行文又は並列化
指示文にクラス型の変数が含まれる場合には、前記並列
実行対象の実行文又は前記並列化指示文により並列化さ
れる実行文の前に前記クラスによるオブジェクトの構築
命令ルーチンを呼び出す命令を生成し、記憶装置に格納
する構築命令ルーチン呼出命令生成ステップと、並列実
行対象の実行文又は並列化指示文にクラス型の変数が含
まれる場合には、前記並列実行対象の実行文又は前記並
列化指示文により並列化される実行文の後に前記クラス
によるオブジェクトの消滅命令ルーチンを呼び出す命令
を生成し、記憶装置に格納する消滅命令ルーチン呼出命
令生成ステップと、を実行させることを特徴とする記録
媒体。
タに、前記ソース・プログラムから中間言の生成時に、
並列実行対象と判断される可能性のあるクラス変数を特
定した場合に、当該クラスの中間言に構築・消滅命令情
報域を確保するステップと、前記構築・消滅命令情報域
に、前記クラスによるオブジェクトの構築命令ルーチン
及び消滅命令ルーチンに関する情報を格納するステップ
と、をさらに実行させ、前記構築命令ルーチン呼出命令
生成ステップ及び前記消滅命令ルーチン呼出命令生成ス
テップにおいて、前記構築・消滅命令情報域に格納され
た情報を用いることを特徴とする付記1記載の記録媒
体。
前記クラスの型情報からアクセスできるようなデータ構
造になっていることを特徴とする付記2記載の記録媒
体。
型の並列コンピュータのためのコンパイラであることを
特徴とする付記1乃至3のいずれか1記載の記録媒体。
ング言語によるソース・プログラムをコンパイルするコ
ンパイル装置であって、並列実行対象の実行文又は並列
化指示文にクラス型の変数が含まれる場合には、前記並
列実行対象の実行文又は前記並列化指示文により並列化
される実行文の前に前記クラスによるオブジェクトの構
築命令ルーチンを呼び出す命令を生成し、記憶装置に格
納する手段と、並列実行対象の実行文又は並列化指示文
にクラス型の変数が含まれる場合には、前記並列実行対
象の実行文又は前記並列化指示文により並列化される実
行文の後に前記クラスによるオブジェクトの消滅命令ル
ーチンを呼び出す命令を生成し、記憶装置に格納する手
段と、を有するコンパイル装置。
グラミング言語で書かれたソース・プログラムでも並列
処理できるようにコンパイルすることができるコンパイ
ラ技術を提供することができた。
実行時における模式図である。
するコンピュータの機能ブロック図である。
す図である。
す図である。
ーを示す図である。
ファイル 120 コンパイラ 122 フロントエンド部 124 並列化処理部 126 オブジェクトコード
生成部 130 オブジェクトコード・ファイル
Claims (5)
- 【請求項1】オブジェクト指向型プログラミング言語に
よるソース・プログラムをコンパイルするコンパイラを
格納した記録媒体であって、 前記コンパイラは、コンピュータに、 並列実行対象の実行文又は並列化指示文にクラス型の変
数が含まれる場合には、前記並列実行対象の実行文又は
前記並列化指示文により並列化される実行文の前に前記
クラスによるオブジェクトの構築命令ルーチンを呼び出
す命令を生成し、記憶装置に格納する構築命令ルーチン
呼出命令生成ステップと、 並列実行対象の実行文又は並列化指示文にクラス型の変
数が含まれる場合には、前記並列実行対象の実行文又は
前記並列化指示文により並列化される実行文の後に前記
クラスによるオブジェクトの消滅命令ルーチンを呼び出
す命令を生成し、記憶装置に格納する消滅命令ルーチン
呼出命令生成ステップと、 を実行させることを特徴とする記録媒体。 - 【請求項2】前記コンパイラは、コンピュータに、 前記ソース・プログラムから中間言の生成時に、 並列実行対象と判断される可能性のあるクラス変数を特
定した場合に、当該クラスの中間言に構築・消滅命令情
報域を確保するステップと、 前記構築・消滅命令情報域に、前記クラスによるオブジ
ェクトの構築命令ルーチン及び消滅命令ルーチンに関す
る情報を格納するステップと、 をさらに実行させ、 前記構築命令ルーチン呼出命令生成ステップ及び前記消
滅命令ルーチン呼出命令生成ステップにおいて、前記構
築・消滅命令情報域に格納された情報を用いることを特
徴とする請求項1記載の記録媒体。 - 【請求項3】前記構築・消滅命令情報域が、前記クラス
の型情報域からアクセスできるようなデータ構造になっ
ていることを特徴とする請求項2記載の記録媒体。 - 【請求項4】前記コンパイラが、共有メモリ型の並列コ
ンピュータのためのコンパイラであることを特徴とする
請求項1乃至3のいずれか1記載の記録媒体。 - 【請求項5】オブジェクト指向型プログラミング言語に
よるソース・プログラムをコンパイルするコンパイル装
置であって、 並列実行対象の実行文又は並列化指示文にクラス型の変
数が含まれる場合には、前記並列実行対象の実行文又は
前記並列化指示文により並列化される実行文の前に前記
クラスによるオブジェクトの構築命令ルーチンを呼び出
す命令を生成し、記憶装置に格納する手段と、 並列実行対象の実行文又は並列化指示文にクラス型の変
数が含まれる場合には、前記並列実行対象の実行文又は
前記並列化指示文により並列化される実行文の後に前記
クラスによるオブジェクトの消滅命令ルーチンを呼び出
す命令を生成し、記憶装置に格納する手段と、 を有するコンパイル装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000305605A JP2002116917A (ja) | 2000-10-05 | 2000-10-05 | オブジェクト指向型プログラミング言語によるソース・プログラムをコンパイルするコンパイラ |
US09/778,087 US20020062478A1 (en) | 2000-10-05 | 2001-02-07 | Compiler for compiling source programs in an object-oriented programming language |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000305605A JP2002116917A (ja) | 2000-10-05 | 2000-10-05 | オブジェクト指向型プログラミング言語によるソース・プログラムをコンパイルするコンパイラ |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2002116917A true JP2002116917A (ja) | 2002-04-19 |
Family
ID=18786431
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000305605A Withdrawn JP2002116917A (ja) | 2000-10-05 | 2000-10-05 | オブジェクト指向型プログラミング言語によるソース・プログラムをコンパイルするコンパイラ |
Country Status (2)
Country | Link |
---|---|
US (1) | US20020062478A1 (ja) |
JP (1) | JP2002116917A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007534065A (ja) * | 2004-04-22 | 2007-11-22 | ワラテック プロプライエタリー リミテッド | オブジェクトファイナライズによる改良型コンピュータアーキテクチャ |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7069556B2 (en) * | 2001-09-27 | 2006-06-27 | Intel Corporation | Method and apparatus for implementing a parallel construct comprised of a single task |
JP3847672B2 (ja) * | 2002-07-03 | 2006-11-22 | 松下電器産業株式会社 | コンパイラ装置及びコンパイル方法 |
US20040199919A1 (en) * | 2003-04-04 | 2004-10-07 | Tovinkere Vasanth R. | Methods and apparatus for optimal OpenMP application performance on Hyper-Threading processors |
US7373640B1 (en) * | 2003-07-31 | 2008-05-13 | Network Appliance, Inc. | Technique for dynamically restricting thread concurrency without rewriting thread code |
US20080282259A1 (en) * | 2007-05-10 | 2008-11-13 | Microsoft Corporation | Declarative concurrency and coordination scheme for software services |
US20090007115A1 (en) * | 2007-06-26 | 2009-01-01 | Yuanhao Sun | Method and apparatus for parallel XSL transformation with low contention and load balancing |
JP2009169864A (ja) * | 2008-01-18 | 2009-07-30 | Panasonic Corp | コンパイル方法およびコンパイルプログラム |
GB0911099D0 (en) * | 2009-06-26 | 2009-08-12 | Codeplay Software Ltd | Processing method |
CN102893255A (zh) * | 2010-02-22 | 2013-01-23 | 美国亚德诺半导体公司 | 用于概率计算机的超标量控制 |
US9430204B2 (en) | 2010-11-19 | 2016-08-30 | Microsoft Technology Licensing, Llc | Read-only communication operator |
US9507568B2 (en) * | 2010-12-09 | 2016-11-29 | Microsoft Technology Licensing, Llc | Nested communication operator |
US9395957B2 (en) | 2010-12-22 | 2016-07-19 | Microsoft Technology Licensing, Llc | Agile communication operator |
US9250877B2 (en) * | 2013-09-20 | 2016-02-02 | Cray Inc. | Assisting parallelization of a computer program |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3039953B2 (ja) * | 1989-04-28 | 2000-05-08 | 株式会社日立製作所 | 並列化装置 |
JP2921190B2 (ja) * | 1991-07-25 | 1999-07-19 | 日本電気株式会社 | 並列実行方式 |
DE4131380A1 (de) * | 1991-09-20 | 1993-03-25 | Siemens Ag | Verfahren zur adaption einer objektorientierten applikation |
JPH05257709A (ja) * | 1992-03-16 | 1993-10-08 | Hitachi Ltd | 並列化判別方法およびそれを用いた並列化支援方法 |
JPH06266683A (ja) * | 1993-03-12 | 1994-09-22 | Toshiba Corp | 並列処理装置 |
GB9320982D0 (en) * | 1993-10-12 | 1993-12-01 | Ibm | A data processing system |
CA2115464C (en) * | 1994-02-11 | 1998-12-15 | William G. O'farrell | Concurrent processing in object oriented parallel and near parallel systems |
US5613120A (en) * | 1994-10-20 | 1997-03-18 | Silicon Graphics, Inc. | System and method for enabling, without recompilation, modification of class definitions and implementations in an object-oriented computer program |
GB9600823D0 (en) * | 1996-01-16 | 1996-03-20 | British Telecomm | Distributed processing |
GB9600854D0 (en) * | 1996-01-16 | 1996-03-20 | British Telecomm | Distributed processing |
CA2175711A1 (en) * | 1996-05-01 | 1997-11-02 | Lee Richard Nackman | Incremental compilation of c++ programs |
GB9620196D0 (en) * | 1996-09-27 | 1996-11-13 | British Telecomm | Distributed processing |
-
2000
- 2000-10-05 JP JP2000305605A patent/JP2002116917A/ja not_active Withdrawn
-
2001
- 2001-02-07 US US09/778,087 patent/US20020062478A1/en not_active Abandoned
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007534065A (ja) * | 2004-04-22 | 2007-11-22 | ワラテック プロプライエタリー リミテッド | オブジェクトファイナライズによる改良型コンピュータアーキテクチャ |
Also Published As
Publication number | Publication date |
---|---|
US20020062478A1 (en) | 2002-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Jayatilaka et al. | Tonto: a fortran based object-oriented system for quantum chemistry and crystallography | |
KR930008769B1 (ko) | 소프트웨어 프로그램 발생용 장치 및 방법 | |
Schäling | The boost C++ libraries | |
US6286134B1 (en) | Instruction selection in a multi-platform environment | |
Schäling | The boost C++ libraries | |
EP1178404B1 (en) | Method and system for compiling multiple languages | |
US6526570B1 (en) | File portability techniques | |
US5778212A (en) | Interprocedural analysis user interface | |
US6931627B2 (en) | System and method for combinatorial test generation in a compatibility testing environment | |
US8893080B2 (en) | Parallelization of dataflow actors with local state | |
US6961931B2 (en) | Dependency specification using target patterns | |
JPH08115209A (ja) | ソース・コード作成システム及び方法 | |
JPH1040114A (ja) | C++プログラムのコンパイル方法及びコンパイラ | |
JP2002116917A (ja) | オブジェクト指向型プログラミング言語によるソース・プログラムをコンパイルするコンパイラ | |
US6934940B2 (en) | Source code transformation-temporary object reduction | |
Miecznikowski et al. | Decompiling Java using staged encapsulation | |
CN111770204B (zh) | 一种执行智能合约的方法、区块链节点和存储介质 | |
Metcalf | The seven ages of fortran | |
US5946493A (en) | Method and system in a data processing system for association of source code instructions with an optimized listing of object code instructions | |
JP4647164B2 (ja) | 中間言語内の不定サイズ変数 | |
US7401330B2 (en) | Cloning programming code | |
JP4768984B2 (ja) | コンパイル方法、コンパイルプログラムおよびコンパイル装置 | |
JP2005182562A (ja) | コンパイル方法および装置、ならびにコンパイラ | |
CN111770202B (zh) | 一种执行智能合约的方法、区块链节点和存储介质 | |
JP2005332146A (ja) | 動的コンテンツ作成プログラムの生成装置、動的コンテンツ作成プログラムを生成するためのプログラム、及び動的コンテンツ作成プログラムの生成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060829 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061027 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20061219 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070216 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20070302 |