JPH0424746A - Program translation processor - Google Patents

Program translation processor

Info

Publication number
JPH0424746A
JPH0424746A JP12500190A JP12500190A JPH0424746A JP H0424746 A JPH0424746 A JP H0424746A JP 12500190 A JP12500190 A JP 12500190A JP 12500190 A JP12500190 A JP 12500190A JP H0424746 A JPH0424746 A JP H0424746A
Authority
JP
Japan
Prior art keywords
expression
program
tree structure
delimiters
operand
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
JP12500190A
Other languages
Japanese (ja)
Inventor
Yuuji Tsujimori
辻森 誘二
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP12500190A priority Critical patent/JPH0424746A/en
Publication of JPH0424746A publication Critical patent/JPH0424746A/en
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
(57) [Summary] This bulletin contains application data before electronic filing, so abstract data is not recorded.

Description

【発明の詳細な説明】 〔概 要〕 計算機の原始プログラムを目的プログラムに翻訳するた
めのプログラム翻訳処理装置に関し、プログラム文の構
造を表す木構造を生成して、高度の翻訳処理を比較的容
易に構成できるようにした、プログラム翻訳処理装置を
目的とし、構文解析部と、意味解析部と詳細解析部とを
有し、該構文解析部は、所与の原始プログラムを解析し
て、所定の文法の構文規則に従う該原始プログラムを所
定の区切り記号によって切り分けて、文節と区切り記号
の列に分解し、該意味解析部は、該文法の意味規則に従
う該文節と区切り記号の列について、所定の括弧の包含
関係に基づいて定まる木構造を生成し、該木構造は、該
原始プログラムの、演算を表す式と、該演算のオペラン
ドを指定する情報に含まれる式とを区別する構造を有し
、該詳細解析部は、該木構造に基づいて、該区分に従い
当該式を処理して、各該オペランドについて当該オペラ
ンドの相対位置を直接表す所定の中間言語表現を生成す
るように構成する。
[Detailed Description of the Invention] [Summary] A program translation processing device for translating a computer source program into a target program, which generates a tree structure representing the structure of a program statement and makes high-level translation processing relatively easy. The purpose is to provide a program translation processing device that can be configured into The source program that follows the syntactic rules of the grammar is divided into sections using predetermined delimiters and decomposed into a string of clauses and delimiters, and the semantic analysis section analyzes the string of clauses and delimiters that follow the semantic rules of the grammar using a predetermined method. A tree structure determined based on the inclusion relationship of parentheses is generated, and the tree structure has a structure that distinguishes between an expression representing an operation of the source program and an expression included in information specifying an operand of the operation. , the detailed analysis unit is configured to process the expression according to the division based on the tree structure and generate a predetermined intermediate language expression for each operand that directly represents the relative position of the operand.

〔産業上の利用分野〕[Industrial application field]

本発明は、計算機の原始プログラムを目的プログラムに
翻訳するプログラム翻訳処理装置に関する。
The present invention relates to a program translation processing device that translates a computer source program into a target program.

〔従来の技術〕[Conventional technology]

FORTRAN等のプログラミング言語で記述された計
算機の原始プログラムを、所要の計算機で実行するため
の目的プログラムに翻訳する、いわゆるコンパイラはよ
く知られている。第4図はこのようなコンパイラ機能を
実行するプログラム翻訳処理装置1の構成例である。
A so-called compiler that translates a computer source program written in a programming language such as FORTRAN into a target program to be executed on a desired computer is well known. FIG. 4 shows an example of the configuration of a program translation processing device 1 that executes such a compiler function.

プログラム翻訳処理装置1は、例えばFORTRAN言
語TR法された原始プログラム2を入力すると、構文解
析部3がFORTRAN言語TR法に従う構文解析を行
って、構文上の誤りを検査し、構文誤りの無い原始プロ
グラムについて、文節と区切り記号の列4を生成する。
For example, when the program translation processing device 1 inputs a source program 2 that has been subjected to the FORTRAN language TR method, the syntax analysis unit 3 performs syntax analysis according to the FORTRAN language TR method, checks for syntactic errors, and Generate string 4 of clauses and delimiters for the program.

文節と区切り記号の列4は、所定の区切り記号、例えば
= (、)、十その他の記号、を区切りとし、その他の
文字、数字等の記号からなる文節と区切り記号との集合
に切り分けてつないだもので、例えば、 C=A (B (I+1) +1)+A、(J+1)の
ような代入文は、 “C=→”Aじ→“Bじ→“工+゛ →″1)“′→°′φ十′′→°“l)”→“φ+”→
“Aじ→“J+”→“1)”。
Column 4 of phrases and delimiters uses predetermined delimiters such as = (,), tens, and other symbols as delimiters, and separates and connects them into sets of phrases and delimiters consisting of other characters, numbers, and other symbols. For example, an assignment statement such as C=A (B (I+1) +1)+A, (J+1) is written as “C=→”Aji→“Bji→“Work+゛→”1)“′ →°′φ1′′→°“l)”→“φ+”→
“Aji→“J+”→“1)”.

のようになる。こ\で、「“」と「”」とで囲まれる各
部が切り分は結果の各集合であり、「→」でそれらがリ
ンクされていることを概念的に示す。
become that way. Here, each part surrounded by "" and "" is a set of results, and "→" conceptually indicates that they are linked.

なお、「φ」は区切り記号が連続している場合等に制御
のために置かれる記号である。
Note that "φ" is a symbol placed for control when delimiters are consecutive.

次に意味解析部5が、文節と区切り記号の列4について
、FORTRAN言語TR法に従う意味解析を行って誤
り検査を行い、正しければ配列データの添字の解析等を
行い、固定部と可変部を求めて、各変数をij域と領域
内相対位置で直接表現した形の中間言語表現6を生成す
る。
Next, the semantic analysis unit 5 performs semantic analysis on the clause and delimiter string 4 according to the FORTRAN language TR method to check for errors, and if correct, analyzes the subscripts of the array data, etc., and separates the fixed part and variable part. Then, an intermediate language expression 6 is generated in which each variable is directly expressed by the ij area and the relative position within the area.

この中間言語表現6について、翻訳部7がいわゆる最適
化処理を行った後コード化処理をすることによって、い
わゆる機械語に対応する目的プログラム8を生成する。
The translation unit 7 performs a so-called optimization process on the intermediate language expression 6 and then performs a coding process to generate an object program 8 corresponding to a so-called machine language.

以上の処理において、演算を表す式は、例えば代入文の
右辺で代入結果を求めるための演算を指定する式の他に
、その演算のオペランドを定義するために、配列要素の
添字等に現れる式がある。
In the above process, the expression representing the operation is, for example, the expression that specifies the operation to obtain the assignment result on the right side of the assignment statement, as well as the expression that appears at the subscript of the array element, etc. to define the operand of the operation. There is.

後者の種類の式には、1配列要素を定義するために、「
配列名(添字式)」の形で使用されるもの、複数の配列
要素を配列区分として定義するために「配列名(添字式
:添字式:一−−−−・−:添字式)」の形で使用され
るものがあり、又文字型変数や、配列の1要素の一部を
取り出すための定義として「文字型変数名(開始位置式
:終了位置式)」、又は[文字型配列基(添字式)(開
始位置式:終了位置式)」の形で使用される部分列式等
の各弐等がある。
In the latter type of expression, to define one array element, "
"array name (subscript expression)" is used in the form of "array name (subscript expression: subscript expression: 1 -------・-: subscript expression)" to define multiple array elements as an array division. It is also used as a character type variable or as a definition for extracting a part of one element of an array. (Subscript expression) (Start position expression: End position expression)'' There are two types of subsequence expressions, etc.

それらの式の評価については、代入文の演算式とは区別
して、指定の各データ要素を決定する結果を得るように
処理する必要があり、例えば配列の添字式は固定部と可
変部から成るようにして、機械語のインデクスと変位に
対応できるようにする。又、デバッグ機能で指定される
場合には、添字式の値が配列で宣言されている下限と上
限の間にあるかをチエツクし、又部分列式の開始及び終
了位置の妥当性等をチエツクするための準備が要求され
る。
The evaluation of these expressions must be distinguished from the arithmetic expressions of assignment statements and must be processed to obtain a result that determines each specified data element.For example, an array subscript expression consists of a fixed part and a variable part. In this way, it is possible to deal with machine language indexes and displacements. Also, when specified by the debug function, it checks whether the value of the subscript expression is between the lower limit and upper limit declared in the array, and also checks the validity of the start and end positions of the substring expression. preparations are required.

[発明が解決しようとする課題] 以上の処理のために意味解析部5は、文節と区切り記号
の列を処理する場合に、括弧の対応を管理して配列要素
の引用の添字式の中に更に配列要素の引用があるような
場合を識別して、添字式や部分列式と他の式とを区別し
ながら、式の評価を処理する必要があるので、処理が複
雑化し易く、処理性能の改善や、高度な最適化処理の導
入等を困難にしている。
[Problems to be Solved by the Invention] For the above processing, the semantic analysis unit 5, when processing a string of clauses and delimiters, manages the correspondence between parentheses and inserts them into the subscript expression of the quotation of the array element. Furthermore, it is necessary to evaluate expressions while identifying cases where array elements are referenced and distinguishing between subscript expressions, subsequence expressions, and other expressions, which tends to complicate processing and reduce processing performance. This makes it difficult to make improvements or introduce advanced optimization processing.

本発明は、プログラム文の構造を表す木構造を生成して
、高度の翻訳処理を比較的容易に構成できるようにした
、プログラム翻訳処理装置を目的とする。
An object of the present invention is to provide a program translation processing device that generates a tree structure representing the structure of a program sentence and allows high-level translation processing to be configured relatively easily.

〔課題を解決するための手段〕[Means to solve the problem]

第1図は、本発明の構成を示すブロック図である。 FIG. 1 is a block diagram showing the configuration of the present invention.

図はプログラム翻訳処理装置10の構成であって、構文
解析部3と、意味解析部11と詳細解析部12とを有し
、構文解析部3は、所与の原始プログラム2を解析して
、所定の文法の構文規則に従う該原始プログラムを所定
の区切り記号によって切り分けて、文節と区切り記号の
列4に分解し、意味解析部11は、該文法の意味規則に
従う文節と区切り記号の列4について、所定の括弧の包
含関係に基づいて定まる木構造13を生成し、木構造1
3は、原始プログラム2の、演算を表す式と、該演算の
オペランドを指定する情報に含まれる式とを区別する構
造を有し、詳細解析部12は、木構造13に基づいて、
該区分に従い当該式を処理して、各該オペランドについ
て、当該オペランドの相対位置を直接表す所定の中間言
語表現14を生成する。
The diagram shows the configuration of a program translation processing device 10, which includes a syntax analysis section 3, a semantic analysis section 11, and a detailed analysis section 12. The syntax analysis section 3 analyzes a given source program 2, and The source program that follows the syntactic rules of a predetermined grammar is segmented by predetermined delimiters and decomposed into strings 4 of clauses and delimiters, and the semantic analysis unit 11 analyzes the string 4 of clauses and delimiters that follow the semantic rules of the grammar. , generates a tree structure 13 determined based on the inclusion relationship of predetermined parentheses, and creates a tree structure 1
3 has a structure that distinguishes between expressions representing operations in the source program 2 and expressions included in information specifying operands of the operations, and the detailed analysis unit 12, based on the tree structure 13,
The expression is processed according to the partition to generate, for each operand, a predetermined intermediate language representation 14 that directly represents the relative position of the operand.

〔作 用〕[For production]

このプログラム翻訳処理装置により、文節と区切り記号
の列について先ず本発明の意味解析部までで構文の構造
解析と所要の意味解析を行って、構文を表す木構造を生
成し、その木構造を詳細解析部が処理して中間言語表現
を生成して、翻訳部に渡す。従って詳細解析部は、式を
評価するために木構造から式を取り出すとき、その式が
添字式等か、代入文右辺の式なのか等の区分が自動的に
識別され、その区分に従って式の処理に入ることができ
る。このようにして、処理の構成が簡明になり、処理性
能の改善や、高度な最適化処理の導入等を容易化する。
This program translation processing device first performs syntactic structural analysis and necessary semantic analysis on a string of clauses and delimiters up to the semantic analysis unit of the present invention, generates a tree structure representing the syntax, and analyzes the tree structure in detail. The analysis section processes it and generates an intermediate language expression, which is then passed to the translation section. Therefore, when extracting an expression from the tree structure in order to evaluate the expression, the detailed analysis section automatically identifies whether the expression is a subscript expression, an expression on the right side of an assignment statement, etc., and evaluates the expression according to the classification. You can start processing. In this way, the processing configuration becomes simple, making it easier to improve processing performance and introduce advanced optimization processing.

〔実施例〕〔Example〕

第2図(a)は前記と同様の代入文に対応する木構造の
例を示し、構文ノードは文の種類「代入文」と、左辺、
右辺の内容を指すポインタからなり、左辺は変数名「C
」を指示し、右辺は演算とオペランドを示すための2項
演算ノードを指示する。
Figure 2(a) shows an example of a tree structure corresponding to the same assignment statement as above, where the syntax nodes are the type of statement "assignment statement", the left side,
It consists of a pointer pointing to the contents of the right side, and the left side is the variable name "C
”, and the right side indicates a binary operation node to indicate the operation and operand.

2項演算ノードは演算子とその後に2項のポインタで、
オペラン°ド又は次の演算を示す2項演算ノードを指示
するようにする。
A binary operation node is an operator followed by a binary pointer,
It points to a binary operation node that indicates the operand or the next operation.

本例の場合両ポインタでオペランドを指示するが、配列
要素、配列区分、部分列等は副オブジェクトノードで表
すものとし、第1のオペランドについては、名前のポイ
ンタで「A」を指示し、添字式のポインタでは、添字式
が演算子を持つ式なので2項演算ノードを指示し、この
2項演算ノードの指示するオペランドの一方は配列要素
なので副オブジェクトノードを指示し、他方は定数なの
でその定数を示す領域を指示する。このようにして、代
入文に対応する木構造を構成する。
In this example, both pointers point to the operand, but array elements, array divisions, subsequences, etc. are represented by sub-object nodes, and for the first operand, the name pointer points to "A" and the subscript In the expression pointer, the subscript expression is an expression with an operator, so it points to a binary operation node, one of the operands pointed to by this binary operation node is an array element, so it points to a subobject node, and the other is a constant, so it points to that constant. Specify the area that shows the area. In this way, a tree structure corresponding to the assignment statement is constructed.

第2図(b)は部分列を表す副オブジェクトノードの例
であって、部分列をr A (3,2) (2:3) 
Jとした場合に、名前ポインタで「A」、添字ポインタ
で添字ノード、部分列ポインタで部分列ノードを指示す
る図のような構成になる。なお、以上の各ノードにはノ
ードの種類を示す情報があるが図では省略しである。
FIG. 2(b) is an example of a sub-object node representing a subsequence, where r A (3,2) (2:3)
In the case of J, the configuration is as shown in the figure, in which the name pointer points to "A," the subscript pointer points to the subscript node, and the subsequence pointer points to the subsequence node. Note that each of the above nodes has information indicating the type of node, but it is omitted in the diagram.

第1図において、構文解析部3は従来と同様に、原始プ
ログラム2から文節と区切り記号の列4をによって誤り
検査を行うが、本発明により、従来のような中間言語表
現出力までの処理は行わず、文節と区切り記号の列4を
括弧の内包関係に着目して構造化し、前記例のような木
構造13を生成する。そこで、詳細解析部12が木構造
13を処理して、中間言語表現14を生成する。
In FIG. 1, the syntax analysis unit 3 performs error checking from the source program 2 to the string of phrases and delimiters 4, as in the past, but with the present invention, the processing up to the output of the intermediate language expression, as in the past, is Instead, the string 4 of clauses and delimiters is structured by paying attention to the inclusion relationship between parentheses, and the tree structure 13 as in the above example is generated. Therefore, the detailed analysis unit 12 processes the tree structure 13 to generate an intermediate language expression 14.

第3図は、詳細解析部12が前記の2項演算ノード等か
ら指示する1オペランドを取り出して処理する場合の処
理の流れの一例であり、処理ステップ20でオペランド
の最初のノードを取り出し、処環ステップ21でそれが
副オブジェクトノードか識別し、副オブジェクトノード
でない場合には処理ステップ22で他の種類のオペラン
ド、即ち定数や単純変数オペランドの場合の処理をする
FIG. 3 is an example of a processing flow when the detailed analysis unit 12 extracts and processes one operand specified from the binary operation node, etc. In processing step 20, the first node of the operand is extracted and processed. In ring step 21, it is determined whether it is a sub-object node, and if it is not a sub-object node, processing is performed in process step 22 for other types of operands, ie, constants or simple variable operands.

副オブジェクトノードであれば、処理ステップ23で添
字があるか識別し、添字があれば処理ステップ24で、
添字式のポインタの指示するノードを取り出して添字式
の処理をする。
If it is a sub-object node, it is identified in processing step 23 whether there is a subscript, and if there is a subscript, in processing step 24,
Extracts the node pointed to by the subscript expression pointer and processes the subscript expression.

次の処理ステップ25で再び副オブジェクトノードによ
り部分列があるか識別し、部分列があれば処理ステップ
26で、部分列のポインタの指示するノードを取り出し
て部分列の処理をする。
In the next processing step 25, it is again determined whether there is a subsequence using the sub-object node, and if there is a subsequence, then in processing step 26, the node pointed to by the subsequence pointer is extracted and the subsequence is processed.

以上の添字式の処理、部分列の処理において、構文によ
り更に2項演算ノード、そのオペランドの副オブジェク
トノード等がリンクしていれば、それらを再帰的に処理
する。
In the above subscript expression processing and substring processing, if the syntax further links binary operation nodes, sub-object nodes of their operands, etc., these are processed recursively.

以上の後処理ステップ27で、添字や部分列の値を固定
部と可変部で表すように処理し、処理ステップ28で識
別して、この翻訳処理のオプションとしてデバッグ指定
があれば処理ステップ29で添字、部分列の検査の処理
をし、以上の各処理の結果として、必要な中間言語表現
14を出力する。
In the above post-processing step 27, the values of subscripts and substrings are processed to be represented by fixed parts and variable parts, and they are identified in processing step 28. If debugging is specified as an option for this translation processing, processing is performed in processing step 29. Subscript and subsequence inspection processes are performed, and the necessary intermediate language expression 14 is output as a result of each of the above processes.

このように、従来であれば線形にリンクされた文節と区
切り記号の列を左から順次走査して、例えば「A(式:
」まで進んだとき、これが添字の無い文字型変数Aにつ
いて、部分列を指定するもので「式」がその上限値であ
ること、又は配列Aの配列区分であることが初めて識別
されることになるが、本発明では副オブジェクトノード
で添字の有無、添字、部分列が直ちに識別でき、それぞ
れの局所化された処理を選択して実行すればよいように
なる。
In this way, conventionally, a column of linearly linked clauses and delimiters is sequentially scanned from the left, for example, "A (expression:
'', this is the first time that it is identified that for a character variable A without a subscript, it specifies a substring and the ``expression'' is its upper limit, or that it is an array division of array A. However, in the present invention, the presence or absence of a subscript, the subscript, and the substring can be immediately identified in the sub-object node, and each localized process can be selected and executed.

以上のようにして詳細解析部12が出力した中間言語表
現14は、翻訳部7によって従来と同様に処理され、目
的プログラム8が生成される。
The intermediate language expression 14 outputted by the detailed analysis section 12 as described above is processed by the translation section 7 in the same manner as before, and the target program 8 is generated.

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

以上の説明から明らかなように本発明によれば、計算機
の原始プログラムを目的プログラムに翻訳する場合に、
プログラム文の構造を表す木構造を生成することによっ
て、高度の翻訳処理を比較的容易に構成できるようにな
るという著しい工業的効果がある。
As is clear from the above description, according to the present invention, when translating a computer source program into a target program,
By generating a tree structure representing the structure of a program sentence, there is a significant industrial effect in that a high-level translation process can be configured relatively easily.

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

第1図は本発明の構成を示すブロック図、第2図は本発
明の木構造の例を説明する図、第3図は本発明の処理の
流れ図、 第4図は従来の構成例を示すブロック図である。 図において、 1.10はプログラム翻訳処理装置、 2は原始プログラム、 3は構文解析部、4は文節と区
切り記号の列、 5.11は意味解析部、 6.14は中間言語表現、7
は翻訳部、     8は目的プログラム、12は詳細
解析部、   13は木構造、20〜29は処理ステッ
プ を示す。
Fig. 1 is a block diagram showing the configuration of the present invention, Fig. 2 is a diagram explaining an example of the tree structure of the present invention, Fig. 3 is a flowchart of the processing of the present invention, and Fig. 4 shows an example of the conventional configuration. It is a block diagram. In the figure, 1.10 is a program translation processing unit, 2 is a source program, 3 is a syntactic analysis unit, 4 is a string of clauses and delimiters, 5.11 is a semantic analysis unit, 6.14 is an intermediate language representation, 7
8 is a translation section, 8 is an object program, 12 is a detailed analysis section, 13 is a tree structure, and 20 to 29 are processing steps.

Claims (1)

【特許請求の範囲】 構文解析部(3)と、意味解析部(11)と詳細解析部
(12)とを有し、 該構文解析部(3)は、所与の原始プログラム(2)を
解析して、所定の文法の構文規則に従う該原始プログラ
ムを所定の区切り記号によって切り分けて、文節と区切
り記号の列(4)に分解し、 該意味解析部(11)は、該文法の意味規則に従う該文
節と区切り記号の列(4)について、所定の括弧の包含
関係に基づいて定まる木構造(13)を生成し、該木構
造(13)は、該原始プログラム(2)の、演算を表す
式と、該演算のオペランドを指定する情報に含まれる式
とを区別する構造を有し、 該詳細解析部(12)は、該木構造(13)に基づいて
、該区分に従い当該式を処理して、各該オペランドにつ
いて、当該オペランドの相対位置を直接表す所定の中間
言語表現(14)を生成するように構成されていること
を特徴とするプログラム翻訳処理装置。
[Claims] It has a syntax analysis section (3), a semantic analysis section (11), and a detailed analysis section (12), and the syntax analysis section (3) analyzes a given source program (2). The semantic analysis unit (11) divides the source program, which follows the syntactic rules of the predetermined grammar, into segments (4) using predetermined delimiters, and divides the source program into segments (4) of clauses and delimiters. A tree structure (13) determined based on the inclusion relationship of predetermined parentheses is generated for the clause and delimiter sequence (4) according to the following, and the tree structure (13) is used to perform the operation of the source program (2). The detailed analysis unit (12) has a structure that distinguishes between the expression expressed and the expression included in the information specifying the operand of the operation, and the detailed analysis unit (12) analyzes the expression according to the classification based on the tree structure (13). A program translation processing device, characterized in that it is configured to process to generate, for each operand, a predetermined intermediate language expression (14) directly representing the relative position of the operand.
JP12500190A 1990-05-15 1990-05-15 Program translation processor Pending JPH0424746A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP12500190A JPH0424746A (en) 1990-05-15 1990-05-15 Program translation processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP12500190A JPH0424746A (en) 1990-05-15 1990-05-15 Program translation processor

Publications (1)

Publication Number Publication Date
JPH0424746A true JPH0424746A (en) 1992-01-28

Family

ID=14899425

Family Applications (1)

Application Number Title Priority Date Filing Date
JP12500190A Pending JPH0424746A (en) 1990-05-15 1990-05-15 Program translation processor

Country Status (1)

Country Link
JP (1) JPH0424746A (en)

Similar Documents

Publication Publication Date Title
US6219831B1 (en) Device and method for converting computer programming languages
EP0204942A2 (en) Compiler for a source program, a method of making the same and its use
JPS6375835A (en) Apparatus for generating intended code, program, list and design document
Cameron et al. Grammar-based definition of metaprogramming systems
US5949993A (en) Method for the generation of ISA simulators and assemblers from a machine description
JPH06501580A (en) Interface for symbol table configuration in multilingual optimizing compiler
KR20230040516A (en) Automation system and method for extracting intermediate representation based semantics of javascript
CN116755769A (en) Source code annotation generation method, device, storage medium and computer equipment
Mi et al. Boosting just-in-time code comment updating via programming context and refactor
MacLennan The Synmac syntax macroprocessor: Introduction and manual, version 5
Sunitha Compiler construction
JPH07121379A (en) Multilingual compiler
Qian et al. A Survey of Learning-based Method Name Prediction
Pranav et al. On–Device Translation of Dynamically Typed and Interpreted Languages
Dempsey et al. A regular expression pattern matching processor for APL
CN121657981A (en) AI coding tool enhancement method based on graph model and multi-stage DSL generation
JP2580336B2 (en) Attribute check processing method of name in language processing system
Matsushita Expressive power of declarative programming languages
Muthukumar et al. Implementing a Multilingual Lexical Analyser for Java, C and C++
KR0168929B1 (en) Potential treatment method of chill potential processor
Sommerville A pattern matching system
Saxena et al. Compiler Design
Vander Mey et al. SYMPLE: a general syntax directed macro preprocessor
Pierce et al. A transformation-directed compiling system
Almufti A SYSTEM FOR THE MANIPULATION