JPH01121939A - Program converting system - Google Patents

Program converting system

Info

Publication number
JPH01121939A
JPH01121939A JP62279201A JP27920187A JPH01121939A JP H01121939 A JPH01121939 A JP H01121939A JP 62279201 A JP62279201 A JP 62279201A JP 27920187 A JP27920187 A JP 27920187A JP H01121939 A JPH01121939 A JP H01121939A
Authority
JP
Japan
Prior art keywords
event
csp
input
converted
conversion
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
JP62279201A
Other languages
Japanese (ja)
Inventor
Hiroyuki Kurumaya
車谷 博之
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP62279201A priority Critical patent/JPH01121939A/en
Publication of JPH01121939A publication Critical patent/JPH01121939A/en
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

PURPOSE:To execute communicating sequential processes (CSP) only with PAS CAL and FORTRAN functions by converting CSP to subcoroutines and converting them to subroutines after the execution of parallel operations of processes. CONSTITUTION:The CSP process conversion system first decides and classifies syntactical elements of CSP of the input (401). Events other than input/output events are converted to procedures corresponding to event names, and an event string is converted to a statement string (402). An event used for selection is converted to a boolean function call and an if statement (403). An output event is converted to c!v with a channel name (c) and an output formula (v) as parameters (404). An input event is converted to c?x with the channel name (c) and an input variable (x) as parameters (405). Input/output guards of guard constituting elements are executed on respective conditions with respect to each channel (406). A scheduler which calls converted subcoroutines in order is generated to terminate the processing (407).

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、cspによる並行プログラムの実現方式に係
り、特にソフトウェア生産性向上、安価なコンパイラ作
成に関する。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a method for implementing parallel programs using CSP, and particularly to improving software productivity and creating an inexpensive compiler.

〔従来の技術〕[Conventional technology]

本発明で変換の対象としているCSPは、ホアール(H
oare)が1978年にシーニーシーエム(CACN
)。
The CSP targeted for conversion in the present invention is Hoar (H
oare) was established in 1978 by CCN (CACN).
).

21巻8号666頁から677頁に述べているC3P(
以下C3P78という)をさらに発展させたもので、コ
ミュニケーテイング シーケンシャル プロセシズ、プ
レンティス・ホール社刊(Communicating
 5equential Procasses、Pre
ntica−Hall、)1985において述べている
ものである。(以下C3P85という)、C3P78で
は、プロセスの並列実行(C8,P85のパラレル、p
arallelに相当する。)とプロセス間通信が中心
であったが、C3P85では従属(subordina
te)やパイプライン(pipeline)が拡張され
ている。また、C3P78では、通信する場合相手のプ
ロセス名を指定するのに対しC3P85ではプロセスと
独立したチャネル名を指定することにより、n対nの通
信が可能になり、またライブラリの作成が容易になる。
C3P (described in Vol. 21, No. 8, pp. 666-677)
It is a further development of the C3P78), published by Communicating Sequential Processes, published by Prentice-Hall.
5equential Procedures, Pre
ntica-Hall, ) 1985. (hereinafter referred to as C3P85) and C3P78, parallel execution of processes (parallel of C8, P85, p
Corresponds to "arallel". ) and inter-process communication, but in C3P85, subordina
te) and pipelines have been expanded. Also, in C3P78, when communicating, you specify the process name of the other party, whereas in C3P85, by specifying a channel name that is independent of the process, n-to-n communication becomes possible, and library creation becomes easier. .

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

C3P85は、プロセスの記述のための抽象機械を与え
ており、この抽象機械は、イベント列全体集合の部分集
合を規定する。イベントは、プロセス外部から観測可能
なプロセスの振舞(beha−viour)の基本単位
である。また、抽象機械の実現(ilplementa
tion)として、プロセスをイベント列を入力とする
リスプ(Lisρ)関数として解釈する方式を与えてい
る。
C3P85 provides an abstract machine for the description of processes, which specifies a subset of the entire set of event sequences. An event is the basic unit of process behavior that is observable from outside the process. Also, the realization of abstract machines (ilplementa)
tion), a method is provided for interpreting a process as a Lisp (Lisρ) function whose input is an event sequence.

CSPを用いたソフトウェア開発では、プロセスの記述
の次に、これを満足するプログラム開発の作業となる。
In software development using CSP, after describing a process, the task is to develop a program that satisfies the process.

C3P85ではCSPからのプログラム生成については
配慮されておらず、CSPの記述とは別にプログラムを
書き下す必要がある。
C3P85 does not take into consideration program generation from CSP, and it is necessary to write the program separately from the CSP description.

本発明は、CSPを満足するプログラムの生成を機械的
に行うプログラム変換方式を与える。
The present invention provides a program conversion method that mechanically generates a program that satisfies CSP.

〔問題点を解決するための手段〕[Means for solving problems]

従来のプログラミング言語パスカル(Pascal)や
フォートラン(Fortran)には並列処理機構がな
いので、並列処理機構の変換が上記目的を達成するため
の技術的課題となる。
Since the conventional programming languages Pascal and Fortran do not have a parallel processing mechanism, conversion of the parallel processing mechanism becomes a technical challenge to achieve the above objective.

本発明の方式は、CSPのプロセス間通信を次の2ステ
ツプで変換する。(第1図) (1)ステップ1 cspのプロセス(101,102,103)をサブコ
ル−チン(104,105,106)に変換する。これ
らのサブコル−チンを制御するためのスケジューラ(1
07)を追加する。
The method of the present invention converts CSP interprocess communication in the following two steps. (Fig. 1) (1) Step 1 Convert csp processes (101, 102, 103) to subcortins (104, 105, 106). A scheduler (1
07) is added.

(2)ステップ2 サブコル−チンをサブルーチン(108,109゜11
0.111)に変換する。
(2) Step 2 Subroutine (108, 109° 11
0.111).

〔作用〕[Effect]

本発明のプログラム変換方式は、プロセスをサブコル−
チンに変換する。このサブコル−チンはプロセスの論理
的な並列動作を逐次的に実行する。
The program conversion method of the present invention converts processes into subcodes.
Convert to Chin. This subcortin sequentially executes the logically parallel operations of the process.

さらに、サブコル−チンはサブルーチンに変換する。こ
のため、逐次計算機のPa5calやFortranの
機能のみを用いてCSPを実行することができる。
Furthermore, subcortinents are converted into subroutines. Therefore, CSP can be executed using only the Pa5cal or Fortran functions of the sequential computer.

〔実施例〕〔Example〕

本発明の一実施例として、変換先言語をPa5calと
する場合を説明する。
As an example of the present invention, a case where the conversion destination language is Pa5cal will be described.

本方式は、第2図のように汎用計算機で実働するソフト
ウェア(変換プログラム)として実現する。磁気ディス
クや磁気テープ等のファイルからCSPを入力し、Pa
5calに変換を行い、これを同じくファイルに出力す
る。
This method is realized as software (conversion program) that actually runs on a general-purpose computer, as shown in FIG. Input CSP from a file such as a magnetic disk or magnetic tape, and
Convert to 5cal and output it to a file as well.

本方式の概要を第3図に示す。Figure 3 shows an overview of this method.

(1)構文解析(301) CSPを入力し構文解析を行う。(1) Syntax analysis (301) Input CSP and perform syntax analysis.

(2)プロセス変換(302) C5PをPa5calとサブコル−チンに変換する。(2) Process conversion (302) Converts C5P to Pa5cal and subcortin.

(3)サブコル−チン変換(303) サブコル−チンをサブルーチンに変換する。(3) Subcortin conversion (303) Convert a subcortin to a subroutine.

(1)は既知の構文解析アルゴリズム(LR(k)など
)を使用する。以下、本発明である(2)、(3)につ
いて詳細に説明する。
(1) uses a known parsing algorithm (such as LR(k)). Hereinafter, aspects (2) and (3) of the present invention will be explained in detail.

1、  CSP 本文はcspの並列処理機構を説明する。1. CSP This text explains the parallel processing mechanism of csp.

(1)イベント(event) プロセス外部からil!測可能なプロセスの振舞(be
haviour)の基本単位である。
(1) Event (event) Il! from outside the process! Measurable process behavior (be
It is the basic unit of haviour.

(2)入力イベント(c ? x) 特別なイベントであり、チャネルCからデータを変数X
に入力する。
(2) Input event (c ? x) This is a special event that transfers data from channel C to variable
Enter.

(3)出力イベント(clv) 特別なイベントであり、チャネルCヘデータ値を出力す
る。
(3) Output event (clv) This is a special event and outputs a data value to channel C.

(4)入出カイベントの同期 共通チャネルへの入力イベントと出力イベントの対が同
時に生起すれば、出力イベントから入力イベントにデー
タが渡される。一方は、相手が生起する時点まで待つ。
(4) Synchronization of input and output events If a pair of input and output events to a common channel occurs simultaneously, data is passed from the output event to the input event. One party waits until the other party arises.

(5)例 M//(PIIQ)の変換例を第1図に示す。C1はP
からM、C2はQからMヘデータ通信するためのチャネ
ルである。C3はMからP及びQヘデー夕通信するため
のPとQの共有チャネルである。
(5) Example An example of conversion of M//(PIIQ) is shown in FIG. C1 is P
to M and C2 are channels for data communication from Q to M. C3 is a shared channel between P and Q for communication from M to P and Q.

2.プロセス変換(302) 本回路は、CSPのプロセスをサブコル−チンに変換す
る。
2. Process Conversion (302) This circuit converts a CSP process into a subcortin.

(1)サブコル−チン サブコル−チンは以下の機能を持つ。(1) Subcortin Subcortin has the following functions.

(a)ココール(cocall) :サブコルーチンを
呼び出す。呼び出されたサブコル−チンは、直前にコリ
ターン(coraturn) L/た文の直後から再び
実行を始める。
(a) Cocall: Calls a sub coroutine. The called subcortin starts execution again immediately after the statement it just returned to.

(b ) coreturn :サブコルーチンから呼
出し元に戻る。
(b) coreturn: Return from the subcoroutine to the calling source.

(2)チャネルバッファ プロセス間通信のバッファとして、チャネル1個につき
、1個のPa5cal変数を設ける。型はチャネルに流
れるデータの型とする。これらは、スケジューラの中に
設ける(107)、以下、チャネル名Cについてバッフ
ァはc  buffと表記する。
(2) Channel Buffer One Pa5cal variable is provided for each channel as a buffer for inter-process communication. The type is the type of data flowing into the channel. These are provided in the scheduler (107). Hereinafter, the buffer for channel name C will be expressed as c buff.

(3)同期フラッグ 各チャネルにつき、次の2種のフラッグを設ける。(3) Synchronization flag The following two types of flags are provided for each channel.

(a)アヴエイル(Avail)[cl :チャネルC
から入力するプロセスが待ち状態である場合はトウルー
(true) 、非待ち状態である場合はフォールス(
false) (b)フェイル(Fail、)[cl :チャネルCに
出力するプロセスが待ち状態である場合はtrue、非
待ち状態である場合はfalsa これらは、Pa5calのブーリアン アレイ(boo
−1ean array)型変数で実現し、スケジュー
ラの中に設ける。
(a) Avail [cl: Channel C
True if the process input from is in the waiting state, false (
false) (b) Fail (Fail,) [cl: true if the process outputting to channel C is in the waiting state, false if it is in the non-waiting state These are Pa5cal's boolean arrays (boo
-1ean array) type variable and provided in the scheduler.

(4)プロセス変換方式(第4図) プロセス変換方式の詳細を第4図に示す6先ず入力とな
るCSPの構文要素を判定分類する(5)イベントの変
換 入出カイベントでないイベントは、これ以上分解できな
いものである。イベントはイベント名に対応するプロセ
デュア(procedure)に変換し、イベント列は
文の列に変換する(402)、この変換例を第5図に示
す。
(4) Process conversion method (Figure 4) Details of the process conversion method are shown in Figure 4.6 First, the syntax elements of the input CSP are judged and classified (5) Event conversion Events that are not input/output events are It cannot be broken down. An event is converted into a procedure corresponding to the event name, and an event string is converted into a sentence string (402). An example of this conversion is shown in FIG.

(6)選択の変換 選択に用いるイベントは、選択可能か否かを示すブーリ
アン ファンクション(boolean func−t
ion)呼出しとイフ(if)文に変換する(403)
(6) Conversion of selection The event used for selection is a boolean function (boolean func-t) that indicates whether selection is possible or not.
ion) call and convert it into an if statement (403)
.

この変換例を第6図に示す。An example of this conversion is shown in FIG.

(7)入出カイベントの変換 (a)出力イベントの変換(404) チャネル名Cと出力式VをパラメタとしてC!■を第7
図(a)に変換する。
(7) Conversion of input/output events (a) Conversion of output events (404) Using channel name C and output formula V as parameters, C! ■The seventh
Convert to figure (a).

先ず、フィル(Fill) [cl = falsa即
ちチャネルバッファが空になるまで待つ(701)、次
にチャネルCへの入力イベントの到着を待つ(702)
First, wait until Fill [cl = falsa, that is, the channel buffer is empty (701), and then wait for the arrival of an input event to channel C (702).
.

次にデータを出力しく703) 、Availフラッグ
をfalseにしく704) 、Fillフラッグをt
rueにする(705)。
Next, output the data 703), set the Avail flag to false 704), and set the Fill flag to t.
Set to true (705).

(b)入力イベントの変換(405) (a)とほぼ双対な形となる。チャネル名Cと入力変数
Xをパラメタとしてc’7xを第7図(b)に変換する
。先ず、Avail [cl=false即ちチャネル
バッファが利用可能となるまで待つ(706)。
(b) Transformation of input event (405) This is almost dual to (a). Using channel name C and input variable X as parameters, c'7x is converted into the image shown in FIG. 7(b). First, wait until Avail [cl=false, that is, a channel buffer becomes available (706).

次にチャネルCへの出力イベントの到着を待つ(707
)、次にデータを入力しく708)、Fullフラッグ
falseとする(709)。
Next, wait for the arrival of an output event to channel C (707
), then input data 708) and set the Full flag to false (709).

(c)ガードの変換(406) ガードの構成要素である各入出カイベントについて、入
力ガードはそのチャネルにつきrFill[cland
 not Avail[clJ 、出力カードはそのチ
ャネルにつきrAvail[cl and not f
ill[clJを条件とする。これらのガードの内少な
くとも1個がtrueとなるまで待つ。これらの条件が
成り立つ場合それぞれの選択子の実行を行う。
(c) Transforming the Guard (406) For each input and output event that is a component of the guard, the input guard transforms rFill[cland
not Avail[clJ , the output card has rAvail[cl and not f
ill[clJ is the condition. Wait until at least one of these guards is true. If these conditions hold, each selector is executed.

ガード(cl’7x−>Pi l C2Py−>P2 
l c3jz−>P3)の変換例を第8図に示す。
Guard (cl'7x->Pi l C2Py->P2
An example of conversion of l c3jz->P3) is shown in FIG.

(8)スケジューラの生成(407) プロセスを変換したサブコル−チンを順に呼び出すスケ
ジューラを生成する(107)。この例を第9図に示す
(8) Generating a scheduler (407) A scheduler is generated that sequentially calls the subcorchines whose processes have been converted (107). An example of this is shown in FIG.

なお、従属オペレータはP//QE (PI IQ)\
αPと定義されることを利用しくC3P85.162頁
)、パラレルオペレータと同様に変換し、(αP−αQ
)のイベントは対応するprocedureを生成しな
い。
The subordinate operator is P//QE (PI IQ)\
Taking advantage of the fact that αP is defined as C3P85.162), convert it in the same way as the parallel operator,
) events do not generate corresponding procedures.

3、サブコル−チン変換(303) 本回路は、サブコル−チンをサブルーチンに変換する。3. Subcortin conversion (303) This circuit converts subcorchins into subroutines.

サブコル−チン変換方式の詳細を第10図に示す。Details of the subcortin conversion method are shown in FIG.

先ず、入力となる中間語の構文要素を判定する(100
1)。coreturnの場所を記憶するために、グロ
ーバル変数として各プロセスをインデクスとする配列変
数を設ける。これはスケジューラのサブルーチン内に宣
言する(第11図)。
First, the syntactic elements of the input intermediate word are determined (100
1). To store the location of coreturn, an array variable is provided as a global variable that indexes each process. This is declared in the scheduler subroutine (Figure 11).

(1) coreturn分岐の変換(1002)ステ
イト(state)の値によってcoreturnの直
後へ分岐する。この例を第12図に示す。
(1) Conversion of coreturn branch (1002) Branch to immediately after coreturn depending on the value of state. An example of this is shown in FIG.

(2) cocallの変換(1003)cocall
を第13図(8)に変換する。
(2) Cocall conversion (1003) cocall
is converted into Fig. 13 (8).

(3) careturnの変換(1004)core
turnを第13図(b)に変換する。
(3) Careturn conversion (1004) core
Convert the turn to that shown in FIG. 13(b).

(4)ホワイル(while)ループの変換(1005
)Pascalでは、ループの外側からループ内にゴー
トウー(goto)文で分岐できないため、coret
urnを持つwhileループはif文とgoto文で
展開する(第15図)。
(4) While loop conversion (1005
) In Pascal, it is not possible to branch from outside the loop into the loop using a goto statement, so coret
A while loop with urn is expanded using an if statement and a goto statement (Figure 15).

ラベル(label)にはユニークなラベル番号を与え
る。
A unique label number is given to the label.

〔発明の効果〕〔Effect of the invention〕

CSPに基づくプロセスの仕様を高級言語であるPa5
calやFortranに自動変換することによるソフ
トウェア生産性向上の効果がある。
Process specifications based on CSP are written in Pa5, a high-level language.
Automatic conversion to Cal or Fortran has the effect of improving software productivity.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は本発明によるプログラム変換方式説明図である
。第2図は本プログラム変換方式を実現するハードウェ
アのブロック図である。第3図は本発明のプログラム変
換方式の流れ図である。第4図はプロセス変換方式の説
明図である。第5図はイベントの変換事例図である。第
6図は選択の変換事例図である。第7図は入出カイベン
トの変換図である。第8図はガードの変換事例図である
。 第9図はスケジューラ説明図である。第10図はサブコ
ル−チン変換方式の説明図である。第11図はcore
turn位置記憶のための変数宣言の説明図である。第
12図はcoreturn直後への分岐説明図である。 第13図はcocall、 coreturnの変換説
明図である。第14図はwhilθループの変換説明図
第 2 図 乃 3 図 躬5図 el−>e2−ンe:3−:)P6り変寝M 6 図 ’   (el−>PI l ez−ンρ2〕ノ麦換薯
 7 図 (α)C!Vの1侠 (b)c?Xのt撓 躬 3 図 ガード(CI?X−>PI I C2?ンーンP21 
c31z−ンP3)の変換筒 9I!1 第 10図 第 11  口 第 12 図
FIG. 1 is an explanatory diagram of a program conversion method according to the present invention. FIG. 2 is a block diagram of hardware that implements this program conversion method. FIG. 3 is a flowchart of the program conversion method of the present invention. FIG. 4 is an explanatory diagram of the process conversion method. FIG. 5 is an example diagram of event conversion. FIG. 6 is a diagram showing an example of selection conversion. FIG. 7 is a conversion diagram of input and output events. FIG. 8 is an example diagram of guard conversion. FIG. 9 is an explanatory diagram of the scheduler. FIG. 10 is an explanatory diagram of the subcortin conversion method. Figure 11 shows the core
FIG. 3 is an explanatory diagram of a variable declaration for storing a turn position. FIG. 12 is an explanatory diagram of branching immediately after coreturn. FIG. 13 is an explanatory diagram of cocall and coreturn conversion. Figure 14 is an explanatory diagram of conversion of the while θ loop. Nomugi replacement 7 Diagram (α) C!V's 1 knight (b) c?
c31z-n P3) conversion tube 9I! 1 Figure 10 Figure 11 Figure 12

Claims (1)

【特許請求の範囲】 1、CSP(コミュニケーテイング シーケンシャル 
プロセシズ:Comunicating Sequen
tialProcesses、1985)による並行プ
ログラム機構である、パラレル(‘||’、pardl
lel)、従属(‘//’、subor dinate
)の組合せによる並行ソフトウェアをサブコルーチンに
よる逐次的プログラムに機械的に変換する手段と、上記
サブコルーチンをサブルーチンに変換する手段を有する
ことを特徴とするプログラム変換方式。 2、上記CSPの並行プログラム機構である、「入力イ
ベント」、「出力イベント」、「ガード」による同期と
通信について、該同期は上記サブコルーチンの呼出しと
リターン、同期フラッグによつて行い、上記通信はチャ
ネルにつき1個のバッファによつて行うことを特徴とす
る特許請求の範囲第1項記載のプログラム変換方式。
[Claims] 1. CSP (Communicating Sequential
Processes: Communicating Sequence
Parallel ('||', pardl
lel), subordinate ('//', subor dinate
); and means for converting the sub-coroutines into subroutines. 2. Concerning synchronization and communication using "input events,""outputevents," and "guards," which are the parallel program mechanisms of the above CSP, the synchronization is performed by calling and returning the above subcoroutine, and using the synchronization flag, and the above communication 2. The program conversion method according to claim 1, wherein the conversion is performed using one buffer per channel.
JP62279201A 1987-11-06 1987-11-06 Program converting system Pending JPH01121939A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62279201A JPH01121939A (en) 1987-11-06 1987-11-06 Program converting system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62279201A JPH01121939A (en) 1987-11-06 1987-11-06 Program converting system

Publications (1)

Publication Number Publication Date
JPH01121939A true JPH01121939A (en) 1989-05-15

Family

ID=17607843

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62279201A Pending JPH01121939A (en) 1987-11-06 1987-11-06 Program converting system

Country Status (1)

Country Link
JP (1) JPH01121939A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6476463B1 (en) 1998-05-28 2002-11-05 Nec Corporation Microwave integrated circuit multi-chip-module

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6476463B1 (en) 1998-05-28 2002-11-05 Nec Corporation Microwave integrated circuit multi-chip-module

Similar Documents

Publication Publication Date Title
EP2062136B1 (en) System and method for using stream objects to perform stream processing in a text-based computing environment
JPH01306923A (en) System for connecting different languages
JP4346316B2 (en) A method for aspect-oriented programming with multiple semantic levels
JPH09231077A (en) Method for reducing size of computer program
JP2001184218A (en) Optimization method in compile of mpi program
US6101326A (en) Method and apparatus for frame elimination for simple procedures with tail calls
US6198813B1 (en) System and method for providing call processing services using call independent building blocks
JPH01121939A (en) Program converting system
JPH10187461A (en) Language processing system
US6948159B2 (en) Automatic compilation of electronic telecommunications system message generation code
KR100246544B1 (en) Thread creation method for parallel constructs on high speed parallel computer
JP2002312167A (en) Program for making computer calculate value of variable, compile program, variable value determining method, and program generating method
KR100276086B1 (en) Method for generating a c++ code from lotos specitication
Evans et al. Automatic Identification of Parallel Units and Synchronisation Points in Programs
JP2601541B2 (en) FORTRAN input / output list processing method
JPH05143356A (en) Compiler device
Kovacevic et al. Prototyping from SDL specifications using a real-time concurrent logic language
JPH06250847A (en) Conversion system for converting instruction of parallel logic type language into vliw type instruction
JPS63269230A (en) Use procedure processing system for cobol compiler
Marty et al. A Statecharts implementation to run simulation of control dealing with parameterized states
Arora et al. Guarded Procedure: A Distributed Programming Concept.
JPH03132825A (en) Compiling system for logical language
JPH0358232A (en) Preprocessor calling system
JPH0259823A (en) Compiling process system
JPS63186331A (en) Program converting system