hogashi.*

日記から何から

冬休みの自由研究始めた

 雑談で構文解析面白いよ〜と教えてもらったのでやってみるかというので冬休みの自由研究している。大学で lex と yacc で自作言語を作る実験をやったことはあるものの、名前とコードの見た目以外全部忘れていて、手の付け方もわからなかったので、今日はひとまず lex から勉強し始めた。

 lex というのは、 Plan 9 /sys/man/1/lex を見ると「generator of lexical analysis programs」 だそうで、日本語を探すと字句解析プログラム生成器という感じ。一緒に例が書いてあり、 lex だけでお試しできるいいやつだったのでお試しした。

ex1.lex

%%
[A-Z] putchar(yytext[0]+'a'-'A');
[ ]+$
[ ]+  putchar(' ');

 入力文字列を見つつ、上から順にパターンにマッチするか見ていって、マッチしたらそのときの処理をして次に進む、という流れ。例では、大文字アルファベットは1文字ずつ小文字にし、末尾空白は消し、空白が続いていたら1つにする、という意味。これは lex ファイルで、これを lex コマンドに渡すと C言語のプログラムを書いてくれる。そのプログラムを gcc コマンドでコンパイルして、実行しつつ文字列を入力すると、 lex ファイルに書いたとおりに文字列が出力される。

$ cat in1.txt 
abcABC
123
0A89FE44    
A  B   C
$ ./aex1.out < in1.txt 
abcabc
123
0a89fe44
a b c

 普段こういうことをしたいときは、 cat in1.txt | perl -pe 's/ +$//g' | perl -pe 's/ +/ /g' とかやっているので、ちゃんとコードとして書けるのは面白いな〜という感想。 C言語なので 'a'-'A' で小文字にする、のような処理も書けて便利。何をするにも三日坊主になりがちなので続くかわからないけど、ゆっくりやっていけると楽しそう。

まさわだまわし

 こんにちは、 id:hogashi です。 masawada Advent Calendar 2019 - Adventar の 8日目の記事です。昨日は id:mazco さんでした。

 参加したいけど全然アイディア無いな……と思っていたんですが、 1日目の記事*1 で遊んだ途端に作りたくなって作りました。

 まさわだまわしです。

ここで遊べます → https://hogashi.github.io/masawada-mawashi

 masawada さんの 3D モデルを 6人同時にまわすことができます。

f:id:hogashi:20191207005605j:plain
タイトル画面の様子

  • 強く押すボタンをクリックで始まります
  • マウスカーソルを動かすと、 6人の masawada さんがめいめいにまわります
    • 最初は様々な方角を向いていると思うので、 6人全員に正面を向いてもらえる場所を探してください(ゲームの枠内にあるはずです)
    • 40秒ほど経つと、この辺りで正面を向くよという丸が出る、おもてなし MAX な状態になるので、その中で探してみてください
  • ピッタリ正面を向く場所を見つけることができると、全員で承認してくれます(そしてタイトルに戻ります)

 スマートフォンでも(注意書きをokして突破すると)プレイ可能です。

f:id:hogashi:20191207012248g:plainf:id:hogashi:20191207012949p:plain
まわしている様子 / 承認の様子

 お分かりかと思いますが、このゲームはモアイまわし (https://skt-products.com/contents/mawasy/index.html) のパロディです。モアイまわしは大好きなゲームのひとつです、皆様もぜひ遊んでみてください。

つかったもの

 Unity (C#) と 3D モデルに入門しました。開発中の画面はだいたいいつも面白かったのでめっちゃ楽しかったです。

f:id:hogashi:20191206064810g:plainf:id:hogashi:20191206064820g:plain
まず回転角が変わった様子 / マウスで全員回転できた様子

 Unity と MMD くらいは少しだけさわったことがあったものの、 3D モデルを Unity でとか、マウス入力を取得するとか、とにかくわからなくてインターネットにある情報を拾いつつドキュメント (Unity - Scripting API) を見て、ひとまず書いては動かして確認していました。

f:id:hogashi:20191206064607j:plain
「masawada に使われているのでタグを消せません」のエラーの様子

やれるとよさそう

 そもそも Unity をちゃんと勉強したい!! オブジェクトの移動とかも勘でとりあえずコード書いて動かして見て調整したりしていて、おそらくもっと便利であろう Unity を使いこなせていない。あと承認するとき 0.1秒ごとに 3D モデルをめっちゃ動かすようにしたら CPU を食いまくる感じで動作がもっさりしてしまったのも解決方法を知りたい。
 そしてそれとは別にステージとか制限時間とか、ゲームっぽいつくりもできたい。

ちなみに

f:id:hogashi:20191206065729p:plain
後ろに佇むロゴ

  • 後ろに佇むロゴのフォントは Sonny Gothic です
    • 日本語だけだとちょっと寂しかったのだった、慣れない手付きでクリスタ使って 20分くらいでつくったけどそれなりに気に入っています

f:id:hogashi:20191206070818p:plain
注意したい

  • その他のフォントは「機械彫刻用標準書体フォント」(http://font.kim/) です
    • これはめちゃめちゃおすすめで、何を書いても壁に貼ってありそうな注意書きっぽくなります
むすび

 とっても勉強になりました。そして id:masawada さんには今年もとってもお世話になりました、来年もとってもよろしくお願いします。明日は id:equal_001 さんです。

本日の散歩

 青山です。








 ちなみに撮ったのは Pixel 3a 。 Photos アプリで色あいなどをぐいぐい変えて遊んだりもしている。

 巡音ルカをお迎えしたので少しずつ試してみている。 PC のストレージ容量が偶然めちゃめちゃ少なくて、英語をやってみたかったのでひとまず英語だけインストールした。英語を入れたらちゃんと読んでくれるのが楽しい。発音記号を扱えるのはとても助かるのだけど、それより細かく発音を変えたいときのやり方がわからない、理想的にはアとオの中間音をア寄りかオ寄りかのスライダーで調整したい。昔、 UTAU で重音テトに Simon & Garfunkel の Sound of Silence を(日本語発音をどうにか駆使して)歌ってもらうというのをやっていたので、その続きとしてルカでやり直している。ところで発音の数が少ない方がやることが少なくてすぐできて、フィンランド国歌の Maamme が完成した。

趣味2

 樋が好きで、見るのを趣味としています。好きな理由はあまりわかりません。

樋とは

 樋 (とい / ひ) とは、主に水を導く機構で、たいてい、管 あるいは その下半分(いわゆるハーフパイプ)のような形をしています。

 現代の日常では、屋根から落ちる雨水を受け止めて流す雨樋が、最も身近な樋だと思います。明確に意識をしたことはないかもしれませんが、見たことはあるのではないでしょうか。屋根からポタポタ滴って壁が汚れたり腐食したりするのを防ぐ役割があります。 Panasonic の「雨といなるほど大百科」に、各部の名称まで載った詳しい画像があります。

https://sumai.panasonic.jp/amatoi/naruhodo/img/kiso02_img01.jpg

https://sumai.panasonic.jp/amatoi/naruhodo/kiso2.html

 他には、河川の施設として樋門(ひもん)などがあるようです。国土交通省 東北地方整備局 山形河川国道事務所 の「最上川電子大辞典」に少し記述があります。

http://www.thr.mlit.go.jp/yamagata/river/enc/words/jpg/kouzou-04.jpg

http://www.thr.mlit.go.jp/yamagata/river/enc/words/06ha/ha-004.html

見どころ

 先述した通り、雨樋は、屋根に沿って水平につける半分の管、それを下まで導く管という単純な構造です。

 多くの場合、雨水は雨水管*1に流すために、地上まで導きます。屋根の高さや水平方向の長さはまちまちなので、継ぐことで長さを調節できるようになっています (最も簡単な例は、塩ビパイプです)。その継ぎ手を見ると、なんだか嬉しくなったりします。
 また、確実に雨水管に導くというよりは、とにかく地面に下ろせばよかろう、という大雑把な雨樋も珍しくありません。雨水をどのように導き終えるのか、を見ると、多様性があって面白いです。

見てみる

江戸城 田安門

 例えば、皇居に散歩に行くと、旧江戸城の門などに雨樋をつけてあることがあり、写真の田安門は、縦樋がたくさん継いであります。おそらく当時には無かったものの、現代の管理上つけたのではと思います。
 また地上ではそのまま流すのではなく、いったん木で受けています。できるだけ音を消しているのかもしれません。

f:id:hogashi:20191103230422j:plain
江戸城 田安門の雨樋

東本願寺

 京都にも面白い例がたくさんあります。東本願寺には、地上に水をためるタイプの雨樋がついています。

f:id:hogashi:20191103234949j:plain
東本願寺
f:id:hogashi:20191103235843j:plainf:id:hogashi:20191103235730j:plain
東本願寺の雨樋
f:id:hogashi:20191103235848j:plain
水がたまっている様子

京都御所

 なんと京都御所にも雨樋はあります。景観に配慮してなのか理由は定かではないですが、地面に溝が掘ってあり、そこに水を導いています。溝に固定するために、少し浮かせて、横から固定するような高度な技術(?)が使われています。夏は管が伸びてしまうなどの問題に対応するためかもしれません。かっこいいですね。

f:id:hogashi:20191104000411j:plainf:id:hogashi:20191104000417j:plain
京都御所の雨樋

八坂神社

 八坂神社の雨樋は豪快で、鎖樋*2が、はるか頭上で途切れており、結構ポタポタしています。一点集中できているので良いのかもしれませんが、ちょっとだけ心配になるような気もします。

f:id:hogashi:20191104002655j:plainf:id:hogashi:20191104002707j:plain
八坂神社の雨樋

電車

 新しい車両ほど分かりづらい気がするのですが、電車にも樋はあります。ドアから乗り込む際に、雨の日でもポタポタ滴っていないのは、雨樋があるおかげです。*3移動しているのに、水をどこに導くのかというと、車両と車両の間で単に地上に落としてしまうようです。
 ちなみに、軽井沢駅に保存されている昔の車両(?詳しくないです)にも、ちゃんとついていることがわかります。

f:id:hogashi:20191104001230j:plainf:id:hogashi:20191104001236j:plain
東急目黒線の雨樋 / EF632(詳しくないです)の雨樋

新幹線

 実は新幹線にも雨樋があります。ただし、空気力学(?)を考慮してなのか、下へ導く構造は無く、単にドアの真上から左右に雨水を避ける傘のような役割をしています。

f:id:hogashi:20191104001918j:plainf:id:hogashi:20191104001923j:plain

むすび

 樋についての文献などを探そうとすると、インターネットではなかなか見つかりません*4。どこか建築系の大学などに行ってみると本や論文があるかもしれないので、図書館を利用できるところとかあるかな~とぼんやり手を考えています。読んでいただけた中で、面白いな、と思うものを増やすことができたなら幸いです。

あわせて読みたい

 以下はすでに上で登場したものです。

*1:雨水管についてはこちらに詳しいです: 下水道の役割 - 雨水を処理する下水道:日本下水道協会キッズページ『スイスイランド』

*2:下へ導く部分が鎖状に飾られている樋

*3:車両の屋根には水の出る機構(エアコン?)があることがあり、この水もそのままドアや窓に降りてこないようになっています。

*4:探すのが下手なのか、気にする人が少なすぎるのか、深く考えるほどのものではないのか、定かではないですが……

趣味

 趣味を聞かれるといつも思いつかなくて困ってたけど、言語(外国語含む)は趣味だと思ってきた。

 日本語では、相手に誤解なく伝わる言葉選びをしつつ無駄を削ぐとか、語呂が面白いとか洒落とかを考えるとか、そういうことを日々している。別に全然上手くないので今までうーんと思っていたけど、趣味ということにはできそう。あと普段何の気なしに使っている言葉("のきなみ"とか"こよなく"とか)を見直して、元々どういう意味とか由来とかなのか予想したり調べたりするのも面白い。

 外国語では、英単語の原義や語源を調べるのが趣味で、weblio、特にハイパー英語語源辞書( http://hidic.u-aizu.ac.jp/ )をよく見ている。語源を見ると色んな単語がどんどん繋がって面白い。あと英語の他にロシア語とか韓国語とかを見て音が大体読める(意味はさっぱりわからない)とか、ドイツ語やフィンランド語の歌をいくつか歌えるようになる(映画やアニメで知ったやつ)とか、深くは勉強してないけど少しかじるみたいなことも趣味。英語の単語のなりたちの話を読んだり、韓国語の母音には陰陽があるとかそういうのを調べたりして知るのも好き。

 翻訳も趣味ではあって、映画の英語を聞いたり見たりして、字幕の時間制限をなくしたらどう翻訳されるか考えたり、実は洒落を言っていることに気づいたりするのが面白い。あと韓国語とか中国語とかの漫画のセリフをGoogle翻訳でなんとかして翻訳してみるのも骨が折れて楽しくて、どこで単語が切れるとかを消したり戻したりしながら探ったりしている。いくつか出てくる意味のうち正しそうな意味を選んでうまく日本語に落とし込むのも、日本語の難しさも相まって良い。