講演抄録/キーワード |
講演名 |
2017-07-20 16:15
再帰呼び出しを持つC言語サブセットからMalbolgeへのコンパイラ ○坂梨元軌・河邉翔平・酒井正彦・西田直樹・橋本健二(名大) SS2017-18 KBSE2017-18 |
抄録 |
(和) |
難読プログラミング言語Malbolgeは,その解析困難性により知的財産権の保護などに役立つと考えられているが,命令が特殊であるためプログラムの作成は非常に困難である.そのため,Malbolgeプログラムを生成するための中間言語として制御付き疑似命令列が提案されているが,Cなどの通常の言語と比較すると依然としてプログラミングが困難である.本稿では,整数型と真偽型を扱え,while文などの基本的な制御構造と再帰関数を定義できるC言語のサブセットのプログラムからMalbolgeコードへのコンパイラの実現法を述べる.コンパイラの実現のために,まず,既存の制御付き疑似命令列に配列構文と関数構文を追加し,それにあわせて既存の制御付き疑似命令列からMalbolgeへの変換系を拡張する.さらにC言語のサブセットから制御付き疑似命令列へ変換する方法を提案する. |
(英) |
Malbolge is an esoteric programming language, which is promising to protect intellectual property rights due to its difficulty of analysis. It is, however, very difficult to program because of its peculiar instructions. Tackling this problem, pseudo-instruction sequences was developed as an intermediate language for generating Malbolge programs. Nevertheless it is still difficult to program compared with ordinary languages like C. In this article, we present how to implement a compiler that translates to Malbolge from a C-language subset containing the integer type, the Boolean type, basic control structures such as while statement, and recursive calls. In the implementation, we firstly added array syntax and function syntax to pseudo-instruction sequences, and strengthen existing tools for the extention to conform with it. We next propose a translation method from C-language subset to pseudo-instruction sequences. |
キーワード |
(和) |
難読化 / 難解プログラミング言語 / Malbolge / / / / / |
(英) |
obfuscation / esoteric programming language / Malbolge / / / / / |
文献情報 |
信学技報, vol. 117, no. 136, SS2017-18, pp. 145-150, 2017年7月. |
資料番号 |
SS2017-18 |
発行日 |
2017-07-12 (SS, KBSE) |
ISSN |
Print edition: ISSN 0913-5685 Online edition: ISSN 2432-6380 |
著作権に ついて |
技術研究報告に掲載された論文の著作権は電子情報通信学会に帰属します.(許諾番号:10GA0019/12GB0052/13GB0056/17GB0034/18GB0034) |
PDFダウンロード |
SS2017-18 KBSE2017-18 |
|