2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

プロデルAdvent Calendar 2019

Day 12

日本語プログラミング言語「プロデル」で日本国憲法をやる

Last updated at Posted at 2019-12-11

はじめに

以下のプログラムを実行しても,エラーが発生しません(バージョン1.6.980で確認)。

「日本国憲法.rdr」を参照する。

朕は、日本国民の総意に基いて、新日本建設の礎が、定まるに至つたことを、深くよろこびて、
枢密顧問の諮詢及び帝国憲法第七十三条による帝国議会の議決を経た帝国憲法の改正を裁可し、
ここにこれを公布せしめる。
日本国民は、正当に選挙された国会における代表者を通じて行動し、われらとわれらの子孫のために、
諸国民との協和による成果と、わが国全土にわたつて自由のもたらす恵沢を確保し、
政府の行為によつて再び戦争の惨禍が起ることのないやうにすることを決意し、
ここに主権が国民に存することを宣言し、この憲法を確定する。

(見やすいように改行を入れていますが,実行時にはあっても無くても構いません)

解説

このプログラムは,ただの代入文で構成されています。朕は~,日本国民は~,とありますが,残念ながら動詞の主語ではありません。

また,1箇所だけどうしても原文を維持できなかった部分があります。「よろこび」を「よろこびて」に改編しています。

基本的な方針としては,プロデルでは動詞の連用形を用いることで複数の命令を1つの文に書くことができるので,これを利用します。この際の制約として,連用形の動詞(手順)が何らかの値を返すことが要求されます。そして,これに伴って,後続の動詞(手順)は引数として受け取らねばなりません。

1文目解説

まず,日本国民の総意に基づいてという部分には,日本国民の総意に基づく手順を用意します。

日本国民の総意に基く手順
	「」を返す。
終わり

次に,新日本建設の礎が、定まるに至つたことを、深くよろこびての部分を説明します。日本語においては,深くよろこんでいるのは朕ですが,致し方なく新日本建設の礎がよろこんでいることにします。
新日本建設の礎の手順として「定まるに至る」を用意したかったのですが,「こと」が邪魔なのです。仕方ないので,名詞として用意します。

定まるに至つたことは,「」。
新日本建設とは
	単一種類
	+礎
	はじめの手順
		礎という礎を作る。
	終わり
終わり
礎とは
	はじめの手順
	終わり
	自分が[あ]を深くよろこぶ手順
		「」を返す。
	終わり
終わり

「よろこぶ」の連用形「よろこび」は連用形として認識されないので,「よろこびて」とテ格にする必要があります。この場合,元の動詞は「よろこぶ」ではなく「よろこびる」という変な動詞にします。日本語の動詞はとても大変です。

続いて,枢密顧問の諮詢及び帝国憲法第七十三条による帝国議会の議決を経た帝国憲法の改正を裁可しの部分は,もう面倒なので,

枢密顧問の諮詢及び帝国憲法第七十三条による帝国議会の議決を経た帝国憲法の改正は,「」。
[い]で[あ]を裁可する手順
	「」を返す。
終わり

としました。

最後に,ここにこれを公布せしめるですが,プロデルには「これ」という代名詞が用意されています。よって「ここ」だけを定義すればOKです。

ここは,「」。
[国民]に[憲法]を公布せしめる手順
	「」を返す。
終わり

2文目解説

まずは,正当に選挙された国会における代表者を通じて行動しの部分を説明します。通じて行動し,と2つの動詞がつながっているので,2つの動詞(手順)を用意します。「正当に選挙された国会における代表者」は,もう名詞として用意します。

正当に選挙された国会における代表者は,「」。
[あ]を通じる手順
	「」を返す。
終わり
[あ]を行動する手順
	「」を返す。
終わり

次に,われらとわれらの子孫のために、諸国民との協和による成果と、わが国全土にわたつて自由のもたらす恵沢を確保しですが,よく見ると,「確保する」という動詞に対して,「~に」「~と」「~を」の3つの補語から成り立っていることが分かります。ちなみに「ため」は名詞です。

われらとわれらの子孫のためは,「」。
諸国民との協和による成果は,「」。
わが国全土にわたつて自由のもたらす恵沢は,「」。
[え]で[あ]に[い]と[う]を確保する手順
	「」を返す。
終わり

続いて,政府の行為によつて再び戦争の惨禍が起ることのないやうにすることを決意しですが,政府の行為によつて再び戦争の惨禍が起ることのないやうにすることという名詞を定義できなかったので,動詞として処理します。

[あ]で政府の行為によつて再び戦争の惨禍が起ることのないやうにする手順
	「」を返す
終わり
[あ]で[い]を決意する手順
	「」を返す。
終わり

最後に,ここに主権が国民に存することを宣言し、この憲法を確定するをやります。

主権が国民に存することは,「」。
【この憲法:文字列】は,「」。
[あ]で[う]に[い]を宣言する手順
	「」を返す。
終わり
[あ]に[い:文字列]を確定する手順
	「」を返す。
終わり

プロデルには,表部品種類に「確定する」手順が存在するので,オーバーロードによってエラーを回避します。表部品種類以外であればどのような型でも問題ありませんが,今回はどの手順も「」を返しているので,文字列にしています。

これで完成です!

すべて

日本国憲法.rdr
定まるに至つたことは,「」。
枢密顧問の諮詢及び帝国憲法第七十三条による帝国議会の議決を経た帝国憲法の改正は,「」。
ここは,「」。
正当に選挙された国会における代表者は,「」。
われらとわれらの子孫のためは,「」。
諸国民との協和による成果は,「」。
わが国全土にわたつて自由のもたらす恵沢は,「」。
主権が国民に存することは,「」。
【この憲法:文字列】は,「」。
[あ]で政府の行為によつて再び戦争の惨禍が起ることのないやうにする手順
	「」を返す
終わり
[国民]に[憲法]を公布せしめる手順
	「」を返す。
終わり
日本国民の総意に基く手順
	「」を返す。
終わり
天皇とは
	はじめの手順
	終わり
	[あ]を深くよろこびる手順
		「」を返す。
	終わり
終わり
新日本建設とは
	単一種類
	+礎
	はじめの手順
		礎という礎を作る。
	終わり
終わり
礎とは
	はじめの手順
	終わり
	自分が[あ]を深くよろこぶ手順
		「」を返す。
	終わり
終わり
[い]で[あ]を裁可する手順
	「」を返す。
終わり
[あ]を通じる手順
	「」を返す。
終わり
[あ]を行動する手順
	「」を返す。
終わり
[え]で[あ]に[い]と[う]を確保する手順
	「」を返す。
終わり
[あ]で[い]を決意する手順
	「」を返す。
終わり
[あ]で[う]に[い]を宣言する手順
	「」を返す。
終わり
[あ]に[い:文字列]を確定する手順
	「」を返す。
終わり

感想

何か可能性を感じました。

2
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?