JPH02201652A - プログラム・ソース・コードを変換するシステム - Google Patents

プログラム・ソース・コードを変換するシステム

Info

Publication number
JPH02201652A
JPH02201652A JP1307802A JP30780289A JPH02201652A JP H02201652 A JPH02201652 A JP H02201652A JP 1307802 A JP1307802 A JP 1307802A JP 30780289 A JP30780289 A JP 30780289A JP H02201652 A JPH02201652 A JP H02201652A
Authority
JP
Japan
Prior art keywords
language
statements
independent
host
precompiler
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.)
Pending
Application number
JP1307802A
Other languages
English (en)
Inventor
Philip Y Chang
フイリツプ・エンータング・チヤング
Jr Daniel J Coyle
ダニエル・ジエローム・コイレ、ジユニア
Dan C Hargrove
ダン・カーター・ハーグロブ
Domingo S Hidalgo
ドミンゴ・セグンド・イダルゴ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH02201652A publication Critical patent/JPH02201652A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • G06F8/423Preprocessors
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 A、産業上の利用分野 本発明は一般にディジタル−コンピューターシステムに
関するコンパイラ及びトランスレータに関する。より具
体的には、本発明は実行可能コードへのコンパイルに先
立ってプログラムのソース−ファイルの一部を翻訳する
ためのプリコンパイラに関する。
B、従来技術 可能な場合はいつでも、コンピュータ・プログラマは、
既に解かれた問題を解くために新しいコンピューターコ
ードを書く事を避けるべきである。
従って、プログラマにとって、現在のプログラミング作
業の種々の部分を達成するために既存のサブプログラム
及びユーティリティを利用するのは普通の事である。サ
ブプログラム・ライブラリを賢明に使用すると、全て新
規なコードを含むプログラムを作成するのに必要な時間
よりも遥かに短い時間で正しいプログラムを作成する事
が可能になる。
ある分野においては、そのためにプログラマが使用可能
な大規模なシステムが形成されている。
例えば、それはデータベース・システムの領域である。
プログラム中でデータベース機能を利用する必要のある
プログラマは、多数のファイル°アクセス手続きを書X
代りに、利用可能なデータベ−ス管理手続きのライブラ
リを起動する事ができる。それらの手続きは、典型的に
は、データベース・ファイルをアクセスし且つ更新する
詳細の全てを扱っている。プログラマは、高水準のサブ
プログラム呼び出しを通じてライブラリ・ルーチンを起
動するだけでよい。従って、プログラマは彼の仕事の残
りの部分に注意を集中する事ができる。
データベース管理システムは、一般に、プログラム開発
に使用している言語における有効なプログラミング・ス
テートメントではない一連のコマンドを用いて起動され
る。例えば、いくつかの周知のデータベース管理システ
ムは、構造化照会言語(S Q L )として知られて
いる形式化された表記法でコマンドを受け入れる。SQ
Lはデータベース処理機能のために特に設計された共通
のインターフェースである。SQLコマンドはC及びC
0DOL等の言語で使用されるプログラミング・ステー
トメントとはかなり異なった形式を有している。
プログラマがSQLコマンドを(C等の言語で=4 書かれた)彼のアプリケーション・プログラム中に含ま
せる事を可能にするためにCプログラムのプログラム・
ソース−コードを走査して、全てのSQLコマンドをC
コンパイラが理解できる形式に翻訳する事が必要である
。これは一般にプリコンパイラを用いて行われる。プリ
コンパイラは、Cコード及びSQLステートメントの両
者を含むプログラム・ソース・ファイルを入力として受
取り、Cソース・コードのみを含む等価な修正されたソ
ース・ファイルを生成する。この(Ig正されたソース
・ファイルは、次にCコンパイラによりコンパイルして
実行可能コードを形成する事ができる。
プリコンパイラは、SQLステートメントを理解し、そ
れらをホスト・プログラミング言語の等価なソース・コ
ード・ステートメントに翻訳するために必要である。埋
めこまれたS Q、 Lステートメントを含むプログラ
ミング言語の各々は、それぞれ異なったプリコンパイラ
を使用しなければならない。例えば、言語FORTRA
N、CS Pa5cab C0BOL及びAdaの各々
に関して別々のプリコンパイラを書がなければならない
これらの言語の構文及び意味論は異なっているので、各
言語用の適当なプリコンパイラは初めがら作成しなけれ
ばならない。
プリコンパイラを作成するために必要な努力及び費用は
かなり大きい。これは、プリコンパイラがSQLステー
トメントと同様にホスト言語のステートメントも理解す
る必要があるからである。
もしSQLの何らかの低水準の特徴が変更されると、各
プリコンパイラの該当部分を書き替える必要がある。
C1発明が解決しようとする課題 従って、プリコンパイラの作成を単純化し、且つ基礎を
成すプログラムに変化が生じた時の保守管理を単純化す
ることが望ましい。
従って、本発明の目的は、プリコンパイラの作成を単純
化するコンピュータ・ソース・コードのためのトランス
レータを提供する事である。また本発明の他の目的は、
(SQL等の)基礎を成す補足的システムについての詳
細な知識を必要とせずにプリコンパイラを書く事を可能
にすることである。
01課題を解決するための手段 これらの目的及び利点を達成するために、補足的言語の
埋込みステートメントを含みうるホスト言語プログラム
用のプリコンパイラは2つの主要な部分に分離される。
1つの部分は処理されるホスト言語から独立である。補
足的言語のステートメントは形式化された、言語に独立
な形式でそれに渡される。この言語独立な部分は、言語
独立なステートメントを構文解析し、実行時ライブラリ
に対する呼び出しを表すタスクのリストを生成する責任
がある。
プリコンパイラの他の部分は、処理すべきホスト言語の
アイデンティティに依存する。それは、ホスト言語のプ
ログラム中の補足的言語のステートメントの位置を決定
し、それらを言語独立な形式に変換し、変換されたステ
ートメントを言語独立な部分に通信する。言語依存部分
は、言語独立部分により生成されたタスク・リストを受
け取り、実行時ライブラリに対する適当なソース・コー
ド手続き呼び出しを生成する。
E、実施例 第1図は、プログラム・ソース・コードを実行可能コー
ドに変換するためのシステムのブロック図である。プロ
グラム・ソース・コードはホスト言語のステートメント
及び補足的言語のステートメントを含んでいる。以下の
説明中では、補足的言語はSQLである。
ソース・ファイル10は、主としてC0BOL又はC等
のホスト言語で書がれたプログラム・ソース・コードを
含んでいる。ソース・ファイルは言語依存プリコンパイ
ラ12への入力である。また1組のユーザー・オプショ
ン14は、典型的には、ソース・ファイル10の実行可
能バージョンに関する期待される実行時環境を定義する
ために使用される。言語依存プリコンパイラ12は、ラ
イン18で言語独立形式でSQLコマンドを送り且つラ
イン20で実行すべきタスクのリストを受け取る事によ
って、SQLパーザ−16と通信する。受け取ったタス
ク・リストは、SQLステートメントを実現するために
行わなければならないライブラリ手続きへの一連の呼び
出しを識別する。
プリコンパイラ12は、これらのタスクをホスト言語の
手続き呼び出しに変換し、それを修正されたソース・フ
ァイル22中に置く。ソース・ファイル10から読み取
られたホスト言語のソース・ステートメントは単に修正
されたソース・ファイル22にコピーされる。
従って、プリコンパイル・フェーズが終了した後、修正
されたソース・ファイル22は、ホスト言語の元のソー
ス・ステートメントの全てと、ソース・ファイル10中
のSQLステートメントが置き換えられたホスト言語に
おける一連の手続き呼び出しとを含んでいる。
次に、修正されたソース・ファイル22は、従来技術で
周知のようにホスト言語のコンパイラ24によりコンパ
イルされ、実行可能コード26を生じる。システムの実
現方法の詳細に依存して、このコンパイル・ステップは
実際には幾つかのサブステップを含む事がある。例えば
、修正されたソース・コードをオブジェクト−コードに
コンパイルするサブステップ及びオブジェクト・コード
を外部ライブラリの標準的なコードとリンクするサブス
テップを含む事がある。
言語依存プリコンパイラ12がS Q Lコードのコン
パイルを実行できることは必ずしも必要ではない。プリ
コンパイラ12は、SQLステートメントを所定の、言
語独立な形式に変換出来さえすればよい。これは比較的
単純な工程である。さらに、返されたタスク−リストを
ホスト言語の手続き呼び出しに変換する事もまた単純な
工程である。
従って、プリコンパイラ12を作成する人はSQLの内
部構造について知識を持たなくてもよい。
さらに、SQLの内部構造に些細な変更があったとして
も言語依存プリコンパイラ12には何の影響もない。
SQLパーザ−16は、受け取った、形式化されたSQ
Lステートメントを構文解析し、各SQ]1 Lステートメントを処理するために実行時に行われなく
てはならないタスクのリストを形成する。
タスク・リストは、標準的な言語独立な形式で言語依存
プリコンパイラ12に戻される。従って、SQLパーザ
−16は、ホスト言語に特有の情報についての知識を持
つ必要はない。事実、単一のSQLパーザ−16を、任
意の個数の異なったホスト言語に依存するプリコンパイ
ラ12と共に使用する事ができる。
受け取ったS Q Lステートメンj・をタスク−リス
トに変換するために、SQLパーザ−16は、データベ
ース管理プログラム28にアクセスする必要があるかも
しれない。データベース管理プログラム28は、データ
ベース30とのインターフェースを与えるシステムであ
る。これは、データの整合性を保証するためにデータベ
ース30に対する全てのアクセス及び更新に関して責任
を有する。実行時に実行されるべきS Q L、ステー
トメントは、従来技術で知られているようにアクセス・
プランにコンパイルするためにデータベース管理プログ
ラム28に送られる。実際のデータベース・アクセスを
生じさせないSQLステートメントは、SQLパーザ−
16で処理する事ができる。
ソース・ファイル10中に埋めこまれたSQLコマンド
はホスト言語の変数に対する参照を含む必要があるので
、プリコンパイラ12はS Q Lステートメント中で
使われている全ての変数のアイデンティティをSQLパ
ーザ−1Gに通信する。
これらの変数はSQL変数宣言セクションで宣言する事
が望ましい。これは各セクションの開始と終了を定義す
るSQLステートメントによって区切られている。それ
らのセクション内で宣言されている全ての変数は、変数
のSQL型、データ・サイズ及び一意的なトークン識別
子を含む言語独立な形式でSQLパーザ−16に通信さ
れる。変数宣言に関するソース・ステートメントは、そ
のまま残り、(1f正されたソース・ファイル22にコ
ピーされる。S Q Lパーザ−16は、構文解析時に
転送された宣言を使用し、アクセス・プランの形成に使
うためにそれらをデータベース管理プログラム28に通
信する。
バインド・ファイル32及びバインダ・ルーチン34は
、アクセス・プランの形成を遅延させることが望ましい
時に使用される。言語依存プリコンパイラ12から受け
取った変数宣言及びS Q L。
ステートメントは、それらを受け取った時にバインド・
ファイル32にコピーされる。SQLパーザ−16及び
データベース管理プログラム28は、それらの通常の機
能を実行する。しがしながら、アクセス・プランの形成
を遅延させる事が望ましいくこれは典型的には、ユーザ
ー・オプション14の1つとして示される)場合は、デ
ータベース管理プログラム28は実際にはデータベース
30にアクセス・プランを書き込まない。この状況は、
ソフトウェアの開発中にソース・ファイル10の構文を
単にチエツクするために使われる。
プリコンパイルが終了した後の、ある時刻に、バインド
・ファイル32を処理するためにバインダ34が起動さ
れる。バインダ34は、プリコンパイル中にS Q L
パーザ−が実行するのと同じ操作を実行し、同一のアク
セス・プランを生成する。
バインド・ファイル32の使用は、アクセス・プランの
遅延形成、をユーザーに許容する便宜を提供する。
実行時ライブラリ36は、実行可能コード26が実行さ
れている時にデ・−・夕△、−ス管理プログラム28に
アクセスするルーチンを含んでいる。SQLパーザ−1
6に91り返されるタスク・リストは、実行時ライブラ
II・ルーチンの起動前に(従ってデータベース管理プ
ログラムの起動前に)標準的な形式でホストFff語の
変数が実行時ライブラリ36に渡される」うにする命令
を含んでいる。3実行時ライブラリ36はデータベース
管理プログラム28を通じてデータベース30をアクセ
スするのに必要な手続き全て、より成っている。実行時
ライブラリ36の実際のコードは、実行可能コード26
に直接リンクする事もできるが、また実行可能コード2
6から手続き呼び出しによりアクセス可能なシステム内
の記憶位置に存在していてもよい。
実行時ライブラリ36は、典型的には、データベース管
理プログラム28により使用されるデータ領域を割当て
及び解放する手続き、並びにデータベース・アクセス・
プランを実行する手続きを含んでいる。また、それは、
データベース30のアクセス時に生しうるエラーを処理
するための手続きも含んでいる。多重処理システムにお
いては、データベース30へのアクセスを一時に単一の
プロセスに限定する事が必要な事もある。これはセマフ
ォを用いて行う事ができる。セマフォは実行時ライブラ
リ36への手続き呼び出しを用いてセット及びリセット
される。
第2図は言語依存プリコンパイラ12及びSQLパーザ
−16によって行われるプリコンパイル・ステップを記
述した流れ図である。破線のボックス48.49内に含
まれるステップはSQLパーザ−16により実行され、
残りのステップはプリコンパイラ12により実行される
。プリコンパイラ12が起動される時、それはユーザー
・オプション及びシステム依存情報を用いて初期化され
る− ] 5i (ステップ50)。またこのステップはSQLパーザ−
16の初期化も含んでいる1、 次に、プログラムのソース・コード・ステートメントが
ソース−ファイルから読み取られる(ステップ52)。
もしプリコンパイラがSQL宣言モードであれば(ステ
ップ54)、次のステートメントはSQLデータ宣言で
ある。S Q、 L宣言モードは宣言開始SQLスデー
トメントが処理され且つ対応する宣言終了5QI−ステ
ートメントが処理されていない時に生する。この時プリ
コンパイラ12は、宣言を、変数のSQL型、データ畏
、及びプリコンパイラI2により一意的に割当てられた
トークンを含む標準的な形式に変換する(ステップ56
)。宣言はSQLパーザ−に渡され(ステップ58) 
、SQLパーザ−は、それを、SQLパーザ−16によ
り維持されている変数リストに付加する(ステップ60
)。また、元の宣言も、修正されたソース・ファイルに
コピーされる(ステップ64)。
もし現在のソース・ステートメントがデータ宣言ではな
いならば、それはSQLステートメントか否かがチエツ
クされる(ステップ62)。もし干うでなければ、それ
は無変更で修正ソース・ファイルにコピーされる(ステ
ップ64)。もし現在のステート、メントがSQLステ
ートメントならば、それは言語独立な形式に変換され(
ステップ66) 、SQLパーザ−に渡される(ステッ
プ68)。
SQLパーザ−16内では、S Q Lステートメント
が通常の構文解析技術を用いて解析される(ステップ6
9)。SQLステートメントに対応するタスク・リスト
が生成され(ステップ70)、プリコンパイラ12に返
される。あるSQLステートメントは、実行時タスクが
実行される必要がない。もし実行されるべきタスクが存
在するならば(ステップ71)、プリコンパイラ12は
ホスト言語の対応する手続き呼び出しを生成する(ステ
ップ72)。
全ての場合において、次のステップは、ソース・ファイ
ル10の中にさらにソース・ステートメントが存在する
か否かを判定する事である(ステップ74)。もし存在
すれば、制御はステ・ンブ52に戻り、次のソース・ス
テートメントが読み取られる。ソース・ファイルが空に
なると、プリコンパイルの工程は終了する(ステップ7
6)。
第1図から容易に判るように、ソース・コードを実行可
能コードに変換する工程は、このシステムの2つの独立
な部分によって実行される。システム全体の左側部分8
0はどのホスト言語がコンパイルされるかに依存する。
右側部分82はホスト言語のアイデンティティに完全に
独立である。
2つの部分は、所定の形式の言語独立な情報を伝達する
ことによってのみ通信する。従って、言語依存部分80
は、言語独立部分82に影響を与える事なく、所望のプ
ログラミング言語をサポートするように実施する事がで
きる。同様に、言語依存部分80の動作に影響を与える
事なく、言語独立部分82の内部機能に変更を加える事
ができる。
言語独立な部分はSQLコンパイラとして説明してきた
が、他のシステムを使用する事も可能である。例えば、
プロ・ソ々又はそれ自身のコマンド言語を有する他の装
置に関するドライバを同様の方式で実現してもよい4、
これは、全ての言語に関して使用される標準的なインタ
ーフェースを持つ、そのような装置のために単一のコン
パイラと実行時ライブラリを書ズ事を可能にする。
F2発明の効果 本発明を用いれば、ブリコンパイラの作成及び保守管理
が単純化される。
【図面の簡単な説明】
第1図は、本発明によるブリコンパイラ・システムのブ
ロック図、 第2図は、第1図のシステムにより実行される動作ステ
ップを説明する図である。 出願人 インターナショナル・ビジネス・マシーンズー
コーポレーション

Claims (3)

    【特許請求の範囲】
  1. (1)プログラム・ソース・コードを変換するためのシ
    ステムであって、 補足的言語のステートメントを言語独立な形式のタスク
    のリストに変換する言語独立な変換手段と、 上記言語独立な変換手段と通信して、複数のプログラム
    ・ソース・コード・ステートメントを含む入力ファイル
    から補足的言語のステートメントを選択し、上記補足的
    言語のステートメントを言語独立な形式に変換し、上記
    補足的言語のステートメントを上記言語独立な変換手段
    に通信し、且つ上記言語独立な変換手段からのタスクの
    リストを受け取る言語特有の変換手段とを含む プログラム・ソース・コードを変換するためのシステム
  2. (2)プログラム・ソース・コードを変換する方法であ
    って、 ホスト言語のステートメント及び補足的言語のステート
    メントを含むソース・ファイルを供給し、上記ホスト言
    語のステートメントを修正ソース・ファイルにコピーし
    、 上記補足的言語のステートメントに対応する、ホスト言
    語に独立な形のタスクのリストを形成し、上記タスクを
    ホスト言語のステートメントに変換し、該ホスト言語の
    ステートメントを上記修正ソース・ファイルに書き込む
    ステップを含むプログラム・ソース・コードを変換する
    方法。
  3. (3)ホスト言語のステートメント及び補足的言語のス
    テートメントを含むプログラム・ソース・ファイルをプ
    リコンパイルする方法であって、ユーザー情報及びオプ
    ションを用いて、ホスト言語特有のプリコンパイラを初
    期化し、 上記言語特有のプリコンパイラから得られた情報を用い
    て、補足的言語のプリコンパイラを初期化し、 上記プログラム・ソース・ファイルを処理して、ホスト
    言語のステートメントを修正ソース・ファイルにコピー
    し、且つ補足的言語のステートメントを抽出し、 上記抽出された補足的言語のステートメントをホスト言
    語に独立な形式に変換し、 上記変換された補足的言語のステートメントを構文解析
    し、且つ上記補助的言語のステートメントを実行するの
    に必要なタスクのリストを形成し、上記タスクのリスト
    をホスト言語のステートメントに変換し、 上記変換されたホスト言語のステートメントを上記修正
    ソース・ファイルに書き込む ステップを含むプログラム・ソース・ファイルをプリコ
    ンパイルする方法。
JP1307802A 1988-11-29 1989-11-29 プログラム・ソース・コードを変換するシステム Pending JPH02201652A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US277367 1988-11-29
US07/277,367 US5230049A (en) 1988-11-29 1988-11-29 Program source code translator

Publications (1)

Publication Number Publication Date
JPH02201652A true JPH02201652A (ja) 1990-08-09

Family

ID=23060551

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1307802A Pending JPH02201652A (ja) 1988-11-29 1989-11-29 プログラム・ソース・コードを変換するシステム

Country Status (4)

Country Link
US (1) US5230049A (ja)
EP (1) EP0373132A3 (ja)
JP (1) JPH02201652A (ja)
BR (1) BR8906000A (ja)

Families Citing this family (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5542085A (en) * 1990-07-24 1996-07-30 Hitachi, Ltd. Method for producing program modules
JP2720904B2 (ja) * 1990-08-31 1998-03-04 富士通株式会社 自己記述によるデータベース管理システムの構成方法および開発/変更方法
JP2811990B2 (ja) * 1991-04-19 1998-10-15 三菱電機株式会社 プログラム処理装置及びプログラム処理方法
CA2077273C (en) * 1991-12-12 1996-12-03 Mike H. Conner Language neutral objects
JPH05233326A (ja) * 1991-12-19 1993-09-10 Internatl Business Mach Corp <Ibm> コンピュータシステムにおいて事象を取り扱う方法及びシステム
US5349660A (en) * 1992-01-24 1994-09-20 Hewlett-Packard Company Method of improving performance in an automated test system
JPH0778742B2 (ja) * 1992-08-12 1995-08-23 インターナショナル・ビジネス・マシーンズ・コーポレイション コンピユータ・プログラム言語変換装置及びその方法
EP0582738A1 (en) * 1992-08-12 1994-02-16 International Business Machines Corporation Language compiler
US5740405A (en) * 1992-12-17 1998-04-14 Microsoft Corporation Method and system for providing data compatibility between different versions of a software program
US5386570A (en) * 1993-05-24 1995-01-31 Hewlett-Packard Company Method for a two pass compiler with the saving parse states from first to second pass
US5504885A (en) * 1993-06-29 1996-04-02 Texas Instruments Incorporated O-R gateway: a system for connecting object-oriented application programs and relational databases
US5432930A (en) * 1993-09-30 1995-07-11 Eagle Crest Limited System for accessing cobol data files by generating a dictionary of NF.sup.2
US5487169A (en) * 1993-11-18 1996-01-23 Motorola, Inc. Method for translating a test plan source file containing multiple programming languages
US5640550A (en) * 1994-04-15 1997-06-17 Coker; Drake Computer system for generating SQL statements from COBOL code
US5826076A (en) * 1994-05-13 1998-10-20 Liant Software Corporation Computer-based information access method and apparatus to permit SQL-based manipulation of programming language-specific data files
US5619685A (en) * 1994-11-04 1997-04-08 Ball Corporation Run-time dynamically adaptive computer process for facilitating communication between computer programs
US5634098A (en) * 1995-02-01 1997-05-27 Sun Microsystems, Inc. Method and apparatus for environment-variable driven software testing
US7024666B1 (en) * 2002-01-28 2006-04-04 Roy-G-Biv Corporation Motion control systems and methods
US7137107B1 (en) 2003-04-29 2006-11-14 Roy-G-Biv Corporation Motion control systems and methods
US20060206219A1 (en) * 1995-05-30 2006-09-14 Brown David W Motion control systems and methods
US20100131081A1 (en) * 1995-05-30 2010-05-27 Brown David W Systems and methods for motion control
US5691897A (en) * 1995-05-30 1997-11-25 Roy-G-Biv Corporation Motion control systems
US5640558A (en) * 1995-05-31 1997-06-17 International Business Machines Corporation Identifying and analyzing multiple level class relationships in an object oriented system by parsing source code without compilation
US5850550A (en) * 1995-08-31 1998-12-15 International Business Machine Corporation No preprocessor and a source level debugger for embedded SQL in a 3GL
US5956510A (en) * 1996-09-10 1999-09-21 Unisys Corporation Apparatus and method for revising computer program code
US5995974A (en) * 1997-08-27 1999-11-30 Informix Software, Inc. Database server for handling a plurality of user defined routines (UDRs) expressed in a plurality of computer languages
US20010032278A1 (en) 1997-10-07 2001-10-18 Brown Stephen J. Remote generation and distribution of command programs for programmable devices
US5950006A (en) * 1997-11-05 1999-09-07 Control Technology Corporation Object-oriented programmable controller
US6072952A (en) * 1998-04-22 2000-06-06 Hewlett-Packard Co. Method and apparatus for coalescing variables
US6158031A (en) * 1998-09-08 2000-12-05 Lucent Technologies, Inc. Automated code generating translator for testing telecommunication system devices and method
US6378126B2 (en) 1998-09-29 2002-04-23 International Business Machines Corporation Compilation of embedded language statements in a source code program
US6173441B1 (en) 1998-10-16 2001-01-09 Peter A. Klein Method and system for compiling source code containing natural language instructions
US7152228B2 (en) 1999-07-08 2006-12-19 Science Applications International Corporation Automatically generated objects within extensible object frameworks and links to enterprise resources
US6978261B2 (en) * 1999-07-29 2005-12-20 International Business Machines Corporation Using database management system's infrastructure to invoke a stored procedure for creating and preparing a database application
US20100131078A1 (en) * 1999-10-27 2010-05-27 Brown David W Event driven motion systems
US8032605B2 (en) 1999-10-27 2011-10-04 Roy-G-Biv Corporation Generation and distribution of motion commands over a distributed network
US7406680B1 (en) * 2000-06-01 2008-07-29 Siemens Communications, Inc. Method for adding extensions to the grammar for ASN.1 without modifying the basic compiler and code generator
US6629313B1 (en) * 2000-06-29 2003-09-30 Microsoft Corporation In-line database access statements without a pre-compiler
US7076782B2 (en) 2001-02-06 2006-07-11 International Business Machines Corporation Method, computer program product, and system for creating form independent applications operative on IMS resources
US7904194B2 (en) 2001-02-09 2011-03-08 Roy-G-Biv Corporation Event management systems and methods for motion control systems
US7043716B2 (en) * 2001-06-13 2006-05-09 Arius Software Corporation System and method for multiple level architecture by use of abstract application notation
US7757225B2 (en) * 2001-06-29 2010-07-13 Microsoft Corporation Linktime recognition of alternative implementations of programmed functionality
US20040205619A1 (en) * 2002-02-14 2004-10-14 Twede Roger S. Method and system for chained format translation
US7587305B2 (en) * 2002-06-26 2009-09-08 Cray Inc. Transistor level verilog
CA2418670A1 (en) * 2003-02-11 2004-08-11 Ibm Canada Limited - Ibm Canada Limitee Method and system for generating executable code for formatiing and printing complex data structures
US7533372B2 (en) * 2003-08-05 2009-05-12 Microsoft Corporation Cross language migration
US8027349B2 (en) * 2003-09-25 2011-09-27 Roy-G-Biv Corporation Database event driven motion systems
US20060064503A1 (en) 2003-09-25 2006-03-23 Brown David W Data routing systems and methods
US20100131077A1 (en) * 2004-02-25 2010-05-27 Brown David W Data Collection Systems and Methods for Motion Control
US7765531B2 (en) * 2004-10-06 2010-07-27 Hewlett-Packard Development Company, L.P. Systems and methods for handling multiple static query modules for distinct environments
US7707561B2 (en) * 2005-02-15 2010-04-27 International Business Machines Corporation Apparatus, system, and method for converting data
US8656374B2 (en) * 2006-06-16 2014-02-18 Business Objects Software Ltd. Processing cobol data record schemas having disparate formats
US8276117B2 (en) * 2007-08-03 2012-09-25 International Business Machines Corporation Displaying and refactoring programs that include database statements
US8473915B2 (en) * 2007-08-03 2013-06-25 International Business Machines Corporation Coverage analysis tool for testing database-aware software applications
US20110302220A1 (en) * 2010-06-08 2011-12-08 Albert Marcella Sql processing for data conversion
EP2610739B1 (en) * 2011-12-29 2017-09-27 Software AG Method and system for executing a 3GL program and / or an assembler program within a 4GL runtime environment
WO2017096155A1 (en) * 2015-12-02 2017-06-08 Speedment, Inc. Methods and systems for mapping object oriented/functional languages to database languages
US9652225B1 (en) 2016-01-04 2017-05-16 International Business Machines Corporation Development community assessment via real-time workspace monitoring
US10459829B2 (en) * 2017-06-07 2019-10-29 M/S. Cigniti Technologies Limited Overall test tool migration pipeline
DE102018112742A1 (de) * 2018-05-28 2019-11-28 Comforte Ag Computerimplementiertes Verfahren zum Übergeben eines Datenstrings von einer Anwendung an eine Datenschutzeinrichtung
US11334324B2 (en) 2019-11-08 2022-05-17 Software Ag Systems and/or methods for error-free implementation of non-java program code on special purpose processors
US11748074B2 (en) 2021-05-28 2023-09-05 Software Ag User exit daemon for use with special-purpose processor, mainframe including user exit daemon, and associated methods

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62216040A (ja) * 1986-03-04 1987-09-22 Fujitsu Ltd プリコンパイラ・コンパイラ呼出し制御方式
JPS63280335A (ja) * 1987-05-13 1988-11-17 Mitsubishi Electric Corp 言語処理システム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0630066B2 (ja) * 1983-10-24 1994-04-20 株式会社日立製作所 テーブル型言語翻訳方法
US4604686A (en) * 1984-01-27 1986-08-05 Martin Marietta Corporation Associative data access method (ADAM) and its means of implementation
US4742467A (en) * 1984-05-04 1988-05-03 Analysts International Corporation Automated programming system for machine creation of applications program source code from non-procedural terminal input
US4829427A (en) * 1984-05-25 1989-05-09 Data General Corporation Database query code generation and optimization based on the cost of alternate access methods
US4667290A (en) * 1984-09-10 1987-05-19 501 Philon, Inc. Compilers using a universal intermediate language
US4791550A (en) * 1985-02-13 1988-12-13 Rational Higher order language-directed computer
US4734854A (en) * 1985-10-08 1988-03-29 American Telephone And Telegraph Company System for generating software source code components
JP2602205B2 (ja) * 1986-01-16 1997-04-23 株式会社日立製作所 データベース・アクセス制御方法
US4864503A (en) * 1987-02-05 1989-09-05 Toltran, Ltd. Method of using a created international language as an intermediate pathway in translation between two national languages
US4791558A (en) * 1987-02-13 1988-12-13 International Business Machines Corporation System and method for generating an object module in a first format and then converting the first format into a format which is loadable into a selected computer
US4809170A (en) * 1987-04-22 1989-02-28 Apollo Computer, Inc. Computer device for aiding in the development of software system
JPH01162979A (ja) * 1987-12-19 1989-06-27 Ricoh Co Ltd データベース管理システムの機能拡張装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62216040A (ja) * 1986-03-04 1987-09-22 Fujitsu Ltd プリコンパイラ・コンパイラ呼出し制御方式
JPS63280335A (ja) * 1987-05-13 1988-11-17 Mitsubishi Electric Corp 言語処理システム

Also Published As

Publication number Publication date
EP0373132A2 (en) 1990-06-13
US5230049A (en) 1993-07-20
EP0373132A3 (en) 1991-11-21
BR8906000A (pt) 1990-06-19

Similar Documents

Publication Publication Date Title
JPH02201652A (ja) プログラム・ソース・コードを変換するシステム
US5675804A (en) System and method for enabling a compiled computer program to invoke an interpretive computer program
US7346897B2 (en) System for translating programming languages
EP0789875B1 (en) Method of translating source code from one high-level computer language to another
JP5851396B2 (ja) 処理方法
US5247678A (en) Load time linker for software used with a multiprocessor system
US7162709B2 (en) System and method for common code generation
US6063133A (en) No preprocessor for embedded SQL in a 3GL
US8707278B2 (en) Embedding class hierarchy into object models for multiple class inheritance
US20080216060A1 (en) System for translating diverse programming languages
Lauer et al. The Impact of Mesa on System Design.
US20050065953A1 (en) System and method for changing defined elements in a previously compiled program using a description file
US20020016864A1 (en) System and method for generating an object structure at run time in an object-oriented programming language
US20030115571A1 (en) Construction of a software application from a plurality of programming languages
Tenma et al. A system for generating language-oriented editors
Pautet et al. CORBA & DSA: Divorce or marriage?
Squyres et al. The design and evolution of the MPI-2 C++ interface
Davis et al. Talking about modules and delivery
Seiwald Jam-Make (1) Redux.
Rekunen Autogenerating Language Bindings for a Codebase
Goos et al. Towards a compiler front-end for Ada
Österberg et al. Rethinking software updating: Concepts for improved updatability
Babich et al. Design considerations in language processing tools for Ada
Trudel Automatic translation and object-oriented reengineering of legacy code
Burow DRAFT: Task System and Item Architecture (TSIA)