登場人物によるエピソードの積み重ねが物語を構築する

 物語を考える上で、登場人物というのはとても大事なものになります。

 登場人物達が経験する数々のエピソードが積み重なって、物語は産まれます。


 登場人物達が互いに関係し合ったり、エピソードによって何かしら変化したりしながら、物語の終幕へと向かっていきます。


 ちょっとしたエピソードを考えてみます。


 太郎君は、ソシャゲのガチャを回します。

 とにかく、全財産をつぎ込んで回します。

 ガチャを回した後に正気に戻れば辞めるでしょう。

 でも、そうでなければ地獄行き。


 はてさて、これをプログラムで表現するとどうなるでしょうか?

 C言語で書けば、こんな風になったりします。

 

character_t taro;

// 財産が残っている間ガチャを回し続ける

while ( taro.zenzaisann > 0 ) {

 play_gacya( taro );

 // 正気に返っていればもう回すのを辞めます

 if ( taro.sanity ) {

  break;

 }

}

// この時点で財産が残っていなければ地獄行き

if ( taro.zenzaisann <= 0 ) {

 goto hell;

}


 細かいことは解らないなら解らないでいいのです。


 無理矢理ですが、プログラミング言語も言語である以上、やろうと思えばこういうことも表現できるのです。


 裏返せば、こういったアプローチでプログラミング言語を、ひいてはプログラミングそのものを学んで行くこともできるんじゃないかなぁ、という思考実験。


 少しだけ、前のプログラムへ踏み込んでみましょう。


character_t taro;


 _t とかは慣例的なので気にしないで下さい。


 太郎君というキャラクターが出てきますよ、という宣言ですね。

 

 あと、


 taro.zenzaisann


 というものがあります。

 そのまま、『太郎君の全財産』という意味です。

 

 taro.sanity


 というものもあります。

 これは、太郎君の正気度。 SAN値 の sanity です。

 ガチャを回すときというのは、何かしら正気を失ってしまうものです。特に、めがねっ娘が限定で登場とかしたときには、クレジットカードが火を噴きます。次月の請求が恐ろしいですが、暑い夏にはそれもまたひんやりしていいかもしれません。


 幸い、先日の『ゴシックは魔法乙女~さっさと契約しなさい!』のリリーのガチャでは無(利の無い)課金で無事に★5のリリーをゲットできたのですぐに正気に戻ることができました。 


 って、なんの話をしていたんでしたっけ?


 そうそう。プログラムの話でした。

 

 先述のプログラムにおける太郎君。

 これは、プログラミングの用語的には『変数』と呼ばれます。


 プログラムには沢山の『変数』が登場します。


 『変数』同士が足しあわされたり、ある変数の値によって分岐したりしながら、何かしらの結果が導き出されます。


 『変数』を登場人物と捉え、足しあわしたり、値で分岐したりするのをエピソードと捉えれば、プログラミングは変数同士の戯れによるエピソードの積み重ねとも言えましょう。


 なんとなくまとまったところで、余談。


 登場人物を表現する上で、とても大切なものがあります。 


 名前、ですね。


 名前あってのキャラクターです。勿論、敢えて『ぼく』とか名前を出さないなどの場合もありますが、その場合は実質『ぼく』がそのキャラクターを象徴し識別する記号として働いているといえるでしょう。


 読子・リードマン、掟上今日子、田中あすか、芹澤直子、パティ・ボルドウィン、瀧智早、と適当に読んだ小説からキャラ名を上げてみただけでも、何かしら特徴が思い浮かぶものです。


 プログラミングにおいても、『名前』というのはとても大切です。


 先のプログラムは、こう書いても同じ動作をします。


character_t a;

while ( a.z > 0 ) {

 p_g( a );

 if ( a.s ) {

  break;

 }

}

if ( t.z <= 0 ) {

 goto h;

}


 イニシャルトークというか、そんな感じですが、何やってるかさっぱりです。


 でも、先ほどのプログラムであれば、プログラミングの心得が無い人でも、なんとなく何をやっているか想像がつくのではないでしょうか?


 実際、仕事でプログラムする上でも、わかりやすさはとても大切です。『命名規約』というものものしいものを制定して、プロジェクトに関わる人達で同じような名前を付けるようにしたりもします。


 名前が大切なのもまた、文芸的といえるのではないでしょうか?


 なんかまとまったようなまとまってないような感じですが、本日はこの辺で。

  • Xで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます

新規登録で充実の読書を

マイページ
読書の状況から作品を自動で分類して簡単に管理できる
小説の未読話数がひと目でわかり前回の続きから読める
フォローしたユーザーの活動を追える
通知
小説の更新や作者の新作の情報を受け取れる
閲覧履歴
以前読んだ小説が一覧で見つけやすい
新規ユーザー登録無料

アカウントをお持ちの方はログイン

カクヨムで可能な読書体験をくわしく知る