共沸

思うところがない

チャリで来た(RubyKaigi 2025感想)

手札事故は欣喜した。

必ず、かの煕煕攘攘ききじょうじょう*1のKaigiに加わらなければならぬと決意した。

事故にはRubyがわからぬ。松山の小さな非IT企業の情シスである。

管理するほどのシステムがあるわけでもないので、PC係*2をし、Haskellと遊んで暮して来た。

けれど昨年那覇3日目の会場で次の開催地を知るや、ひどく鳥肌に打ち震えたのであった。

とんでもねえことが起きた。

 

旅費が、ゼロだ……

チャリで来た(例のポーズ)

おはようございます。手札事故(hand_accident)と申します。

生まれも育ちも豫州松山、Haskell、Nim、Svelteなどを書いて生きております。

ひょんなことから(割愛)、RubyKaigi 2024にファーストタイマーとして参加し、今年はまさかの地元開催ということで張り切ってattendeeになりました。

hand-jiko.hateblo.jp

去年の反省を活かして手短めにやります*3。

 

RubyKaigi 2024 那覇からのプログレス

Rubyを一切書いてない状態で無謀にも沖縄へ飛び込んだ前回でしたが、やっぱRubyを作る話であって使う話ではないというセッションが多かったためか、マジで大いに糧になりました。

具体的には、今まで軽くPythonのLRパーサジェネレータとHaskellのパーサコンビネータ触った程度でまったくブラックボックスとして扱っていたパーサの中身と向き合うモチベが生えたことが大きいです。

この1年、Trifecta*4やcojna/iota*5のPrimParser*6の中身を読んで、Trifectaと同じ4状態(Epsilon/Consumed * Success/Failure)オートマトンでありつつ一切のエラーハンドリングを捨てた速度志向のAsciiパーサを自分でも真似して書いて、業務で使ってみるなどの進歩がありました。

Haskellの遅延評価を活かした無限先読み系パーサ、どこにでもバックトラックできるのは強みだけどすぐメモリ食い尽くすんだよなア…… LR(1)あるいはそれに準ずるものでめちゃくちゃ複雑なパースやってる世の言語処理系はしみじみとすごいですよ。本当に。特にRuby。

もう一つ。

これは超個人的な思想なんですけど型による抽象表現力がHaskellくらいまで高まってくると、だんだん動的型付け言語の書き心地になっていきます。ダックタイピングに近いことをやっていける感じになる。このへんは普通に賛否あると思うんですが世界観とグルーヴの話です。ドットの後に書いたメソッド名でだんだん謎のオブジェクトの正体の外堀が埋まっていくように、適用された関数がその型変数のConstraintを緩やかに締め上げていく。あー手短めにって言ったのになんか筆が乗ってきたな。Lensの話がしたいということですね。

hackage.haskell.org

Haskellの中でも一つ壁として知られるこの巨大ライブラリですが、端折って説明すると、プロパティアクセスの抽象化というか「getterとしてもsetterとしてもmodifyとしても呼び出せる合成可能な関数」でlensと呼ばれているものがあって、その拡張や縮小や双対がたんまり入っているというものです。

よいよ*7いなげな*8話、これドット+プロパティです。だれだ関数型とOOPがさんざん云々いってインターネットを荒らしまわってHaskellとかに消えない風評被害を、いいえ、そういう話を楽しいレポートでしにきたわけではない

クラスベースOOPを那覇でいっぱい見た結果、これの中身への興味というのも出てきました。

現在あわよくば公開できないかなあと思って、lensライブラリとは別の実装*9のライブラリに書かれてない双対部分*10について趣味でチクチク書いていますが、暗黙にオートマトンを初期化して不動点に行くまで無限に再帰して畳むなどの邪悪な動作が無害そうな見た目で書けてしまい、終了しない無限再帰ってHaskellの型システムのちょっとアレな話*11が始まってしまうのもあって、書かれてないものには相応の理由があるんだなァと思うなどありました。あと数学力が足んない。大学をドロップアウトして基礎がなっていないので独学が苦しい。ムキムキの数学の記事、具体例にいっぱい怖そうな数学の話が並んでプログラミング以外の具体例がわがんにゃい。

えー脱線しましたね。

そんな感じで1年過ごしておりました。弐寺がSP三段からSP四段になり*12、DDRは足19のクリアが1曲増えました*13。rubyは3.4をインストールして、ちょっとチュートリアルをやったのでゼロ知識ではなくなりました。ほぼゼロだけど……構文が気持ちいいのでなんかWebやるときはRails使ってみたいですね。*14

セッションの感想

まあ時系列とかグチャグチャですし見たの全部網羅できるわけではないですがつらつらとそれをします。

ima1zumiさん

スムーズな歴史説明!メインフレーム周りのことは本当にわからないので怖え~と思いつつワクワクしましたね。

言語趣味者であるという自負はあるので、デーヴァナーガリーの結合文字や左からかかって大きくかぶる母音iiはウンウンと聞いていました。学習したことある文字だとアラビア文字も大きく字体が変化しますね。

ユニコード正規化の話もまあ地獄とは聞きますね。業務でやったことなくてよかった。素朴な文字数カウントしかやってないので結構ビクッとした。まあ入出力をマイクロソフトのアレ1とかいうshift_jis環境に絞るという荒業で避けているので、ドメインに簡体字や拡張キリルが来ただけで詰む薄氷のアプローチです。shift_jis delenda est.

makenowjust さん

異なるパーサ間の動作の差を調べるために等価なオートマトンを学習的に構築してその同値性を計算するというとんでもねえ話ですね。まずオートマトンのXORをとるところから初耳でずっと面白かったです。こうなんか意味を保ったままクッと持ち上げたところで初めて現実的になる計算って、ラプラス変換にも通じるかっこよさというかロマンがあります。まじでかっこいい。

fetburnerさん

継続!いやーcontinuationという文字がスケジュールに踊っていたのをみて僕も小躍りしていました。

個人的に慣れ親しんだ概念ではあるんですけど、言語固有のアクションを使って実現しているとかではなくて、まあたまたま爆裂に最適化されるだけの高階関数(とRank N Type)で書かれたイディオムという認識だったので、むしろ他の言語だとこんなめんどくさいんだなという驚きがありました。

Haskellでの使い道としては、代数的データ型を継続に書き直して関数のnewtypeにしてしまう*15ことでゼロコスト型キャストできるようにするというものがあり、いま書いてるoptics周りのやつはそのへんを悪用しまくった結果internalモジュールが呪文みたいになってきました。

例に上がってたdo記法ライクなフラットなリストコンプリヘンション、本当に見た目完璧ですごいです。やっぱせっかく動的型付けなんだからこういう魔術やってなんぼですね。気持ちいい言語であることですよ。そしてFiberで代替できないのにdeprecated、悲しい……

shift/resetの存在自体は知ってたんですがあんまり活用できてないですね。なんならcallCCもあんまり使えてないです。精進しなきゃ……Haskellってマルチパラダイム純粋関数型言語で(要出典)……

k0kubunさん

脱最適化が必要になるコード例、シンプルながら邪悪なブツ揃いで面白かったです。

まあ最小の例を抜き出してるから面白く見えてるだけで、多分コードが肥大化するごとに脱最適化チャンスがチャキチャキと生えてくるんでしょうけども……

spikeolafさん

改行をめぐる、パーサ(およびレキサー)の深淵について。

前日「明日lex_stateの話までしようと思ってるんだよね」みたいなことをゲーセン後に仰ってたのですごく楽しみでした。

混沌の源であるlex_stateを滅ぼすために、秩序側である文法上でその振る舞いをモデリングする、「混沌を秩序に引きずり下ろす」……シビれますね。

tric2025

やばすぎ。

当日書いたメモには「やばすぎ」とだけ書いてありました。

クワインがポンポン出てくることに我々は慣れすぎているのではないでしょうか。

s01さん

通信の自由を守るためのe2eeに大義名分をつけて穴を開けようとする時流についてのポリティカルな話が半分、e2eeで爆発する計算量を効率化する話が半分でした。

自動的に構築される木構造が計算の共通部分を保持するのクールですね。

junk0612さん

IELRがlramaに入っためでたいですね!去年に引き続きIELRのお話でした。既読トークン列を文脈として使って先読みをLALRより絞る?という理解でいいですかね。これをやることで誤読が減って、エラー位置が特定しやすくなるのいいですね。また、複数のエラー状態に入ったときに逆伝播で全部取れるのもワクワクしました。双方向計算じゃないですか。

全然トークと関係ない部分なのにそれが感想でいいんですか私?

https://x.com/hand_accident/status/1912778742877065539

ahogappaさん

ワンバイナリ化、まじで難しいですよねえ~~~~~~~。一時期Pythonで作ったみみっちいスクリプトを社内のおじいちゃんたちに使ってもらうに際してPyInstaller*16とかcx_Freeze*17とかnuitka*18とかつかってたものの、こういう既存のライブラリ頼みでもあっちがこけこっちがこけ挙句の果てにアンチウイルスソフトに秒で消されるという苦しみ。

それがもうワンバイナリ化ツール作る側となると想像を絶しますね。

autoloadによるrequireの乗っ取りをはじめとしたエレガントな超絶技巧からスタートして、よりいい感じに動くようにFSまわりを頑張ったという話でしたが、そういうメタプロ見るのが好きなのもあって心から応援しています。

sue445さん

ムキムキのコード!腕力でねじ伏せたGo FFI、壮観でした。Cの型だと配列とポインタの区別がつかないのとても渋い顔になりますね……

peterzhu2118さん

Nimはコンパイル時にメモリ管理方式を選べて、しかもこれが結構体験として良いので、rubyも選べるようになるといいなという話アツいなと思いました。まあ大体デフォルトのやつ(今はORC*19かな)使うんですけど、意外とGC/RCを切るオプションの使い道があって、ワンショットかつ小規模なスクリプトとかは誤差速くて……

matzさん+closing

「AIやるならPythonだけどAI時代には人の手で書かれたコードがいっぱいあるやつがつよい」「人の手で持続的に書かれるためにはプログラマにとって楽しい言語のほうがいい」「すなわち、Ruby」というなめらかな附会でした。「型パズルが楽しい人もいる」という例示のところで「俺!俺!俺俺俺俺」になっていました。レゲエ砂浜big wave

これまでも散々あれでしたけどあくまでレポートではなく感想記事なので自己紹介もするし自分語りもします。それ読みに来てもらってるわけですからね。

でもすべての型システムが楽しいかと言われると個人的にはそうではなくて、メモリ上の表現とかメタル側の物事とかをガン無視して抽象を表現できるのが好きですね。そういう意味でTypeScriptのnumber型ですか、あれはなかなかツボです。真剣に高速化しようとしてIntかFloatか推定しようとするなどしていると呪いたくなるでしょうけど……

最初に書いたように、これは"思想"ですが、十分な型システムは動的型付けのような滑らかな書き心地をもたらしてくれます。逆に言うと動的型付けというスタイルがある意味では理想に近いんですね。個人的な理想に。

他にも、リッチなパーサによって実現されたアグレッシブなカッコ省略(`p 3 + 5`)、シンプルに見た目がかっこいいメタプロ、思想の伝わってくるnilの扱いなど、(あんまり書いてないとはいえ)楽しい言語だなあと思います。

Drink up・イベントなど + Day 4~

流石に地元なのでdrink upを選ぶに際して「行ったことのないお店に行こう」と思い、そのようにしました。結果として、"高級なので地元なのに行ったことない店"で"食ったことない美味い肉や魚"を食うに至りました。ヒェ~……スポンサーの皆さん、ガチごちそうさまです。

食べ物の話をしますと、話した人話した人に何食べた?どれ美味かった?みたいなトークをしていると鯛めしなどのメジャーどころ、鍋焼きうどんなどのマイナーメジャーどころ、雉鍋などのマイナーどころなどバラエティに満ちた回答を頂きまして郷土愛ガンガン刺激されて究極で最高でした。結構カツオが好評で意外に思っていたところ、後で調べたら四国の中で一番水揚げ量が多い港は愛南町にあるんですね。本当に知らなかった。

チャリで来たらチャリで帰らないといけないが自転車も飲酒運転はとっ捕まるのでそのへんのコンプライアンスに配慮して帰りは毎日徒歩でした。5kmくらいあるので歩けるのは歩けるが連日となるとゆっくりと効いてきます。書店コーナーで買った数冊を背負ったままMixinでぶち上がっていたらトドメが刺されました。ローカルオーガナイザーをしながらオフィシャルパーティーの様々をやってカラオケもセッションスピーカーもDJもやってたs01さんやばすぎます。お疲れ様でした。氏に限らず運営のみなさん本当にお疲れ様でした。ビッグ感謝。

中心市街地マチとはいえ平日夜の人出はたかがしれている*20見慣れた往来を、名札を佩いたRubyistが埋め尽くしている見慣れない景色。

2回目で多少慣れるかとは思ったもののやっぱこの"視界全部ITエンジニア"という非日常感は喰らいますね。

2週間ほど社向けのレポートもこの記事も手がつかずボーッと過ごしていましたが、だんだん夢から戻ってきました。まずは社向けのレポートを書き上げて来年の函館に向けて有休取らせて~のアピールをするところからですね。あと会場で買った本*21を積まずに消化し、書いそびれた本*22をポチって積むこと。Rustへの食わず嫌いと腰痛を治すこと。Costrength Optics完全に理解すること……多いですね。

 

知るか、やります。

まずはこの記事を書きました。 完全に勢いなので誤字とかは直しにきます。

ウオー

勇者は、ひどく激チャ*23した。

 

 

*1:煕煕攘攘(ききじょうじょう)とは? 意味・読み方・使い方 - 四字熟語一覧 - goo辞書

*2:「このExcelがこわれたんやけど~」「は~い」

*3:本気で手短めにやるんだったら最初のメロスはカットでは?

*4:

hackage.haskell.org

*5:cojnaさんの競プロ用Haskellライブラリ

github.com

*6:StateモナドベースのAsciiパーサ。unboxed tupleやByteString.Internal、unsafePerformIOなど凝った高速化が仕組まれている

*7:伊予弁、「愈々」に由来する強調の副詞

*8:伊予弁、奇妙な・奇特な

*9:Profunctor Optics

*10:CostrongやCochoiceをpの制約にもつp a b -> p s t

*11:HaskとSetの一番の差異であるところのbottom

*12:おのれHyper Boundary Gate

*13:Egoism 440 SP Challenge、難所を4枚抜きでガチャガチャするやつを運が足りるまで回数やっただけなので地力は譜面の想定に至ってない

*14:Yesodは?←ShakespeareとTHがね……

*15:CPSあるいはChurch encodingあるいはBoehm-Berarducci encodingなどと華々しいカタカナで呼ばれるらしいがなんか誤用が多いらしくて結局なんて言ったらいいのかわからん

*16:環境全部tree shakingせずにzipにぶちこむので重くて遅い

*17:なんか設定が難解で厳しい気持ちになる

*18:喧嘩するライブラリが多い

*19:ARCが循環参照に弱いことの克服を目指して作られた参照カウント

*20:平成の大合併で無理やり50万にした50万人都市

*21:パタン・セオリー、実践プロパティベーステスト、脳に収まるコードの書き方、アンダースタンディングコンピュテーション、ストレンジコード

*22:コンパクトデータ構造

*23:全力で自転車を漕ぐこと

Ruby知識ゼロから初参加したRubyKaigi 2024レポート

TL;DR

楽しかった!

本編

おはようございます。手札事故(twitter:@hand_accident)と申します。

Ruby知識ゼロから初参加したRubyKaigi 2024レポート、略してルゼロ*1という感じでやっていきたいと思います。

< Day 0

自己紹介でもしとくか。生まれ育った愛媛県松山市*2に帰って非IT企業でパソコン係をやっている過程で、すべてが個人開発の労働環境で趣味全ブッパ技術選定をした結果HaskellとNimを書くようになりました。すこしSvelteもします。

Rubyは名前を聞いたことがあるしちょっとニッチなPythonライブラリ探そうとしたら時々検索にgemが引っかかってそちらにはあるのねえという感想を抱くなどしていましたが何の因果か触ってみるには至らず、沖縄に来て初めてコードを見たまであります。

愛媛県松山市で趣味の音楽ゲーム(DDR)に高じていたところ、ちょうど移住してきた sylph(https://x.com/s01) さんとゲーセンで知り合い、RubyKaigiの存在を認識したのが去年のこと、今年はめでたくsylphさんがspeakerやるということで、speakerやるなら聞きに行くかァと有給休暇を申請してチケットを取りました。流石にRuby一切触ったことないので有給休暇で行くつもりだったのですが上司のおかげで出張扱いになりました。やりましたわ。ありがてえ。帰ったのでレポート書かなきゃ……マークダウン版は帰ってきた月曜に書き上がってんだよなああああああMicrosoft Wordが憎い!*3

飛行機とKaigiチケットは取ったものの、この時点で宿泊先は一切決めておらず、快活クラブかなあとぼんやり思っていました。快活好きだし。

Day 0

今のうちに目に焼き付けといてもいいと思います。松山空港のめちゃくちゃ目立つ位置にある"やってる"オブジェです。

sylphさんと合流して飛びました。

僕全然飛行機乗らないんですよね。前に乗ったのが修学旅行とかだったので実にン年ぶりというかほぼ10年でありませんこと?時の流れくん……?

それだけのブランクがあると蓄膿持ちなので耳抜きが地獄になるということを完全に失念していて、ちょうど風邪をこじらせて治ってんのに蓄膿だけ長引いてるタイミングで気圧差を浴びたため、内耳がとんでもないことになり、

離陸!そして空港でソーキそばを流し込んでいる間もほぼ行動不能になっていました。

午後はotoge.rbと称して宜野湾のラウンドワンで集まると聞いたのでノコノコ着いていきました。

いま思うと"濃いメンツ"だったなと思います。yui-knkさんいらっしゃったし。

メモ: タクシー代などを愛媛県松山市でsylphさんにお返しする。*4sylphさんありがとうございます。

Day 0のdrink upは何もかも予約が間に合わなかったので、流れでクルーズの受付まで来たところキャンセル待ちにも失敗しました。

ここで駄弁っていたところ宿の話になり、快活の予定というとめちゃくちゃ驚かれ、ちょうど欠員埋めを募集していたやんちゃハウスにお邪魔させていただくことと相成りました。まじで感謝です。

Asakusa.rbのdrink upは席に余裕があるということで途中参加しました。

各テーブルに泡盛据えてあるのが面白かったです。あと生活の中で英語喋る機会が本当にないと自分の英語力について過信おもってた1000倍言葉が出てこないですね。

帰りめっちゃ雨で足が滑って縁石につんのめって左腿を軽肉離的傷(かるにくばなれてきいた)め、ずぶ濡れでやんちゃハウスに帰りました。

10人入っても5LDKは広くてすごい。めちゃくちゃ快適。

これが快活だと始まる前から終わっていた可能性がある。本当に感謝です。

Day 1

起きました。起きるのって難しいですからね。

起きるのが難しくて大学辞めたまである。

Ruby一切書いたことないけど1日くらいセッション聞いてたらシンタックスとか雰囲気把握できるかなと本当に情けない準備で過ごしていたら、初っ端のキーノートがtompngさんで異常シンタックスを山程浴びることになり、"顔"になってしまいました。%%顔%かも。

というかクワインってそんなにポンポン出てくるものではなくて……Showクラスがあるからクワインが安い言語使っといてなんだけど……解説されたら意図はわかるけどその発想に至る過程がなおわからない……自分で消したソースコードを誤り訂正してeval?????……わぁ綺麗……という感じでした。

放心してたらバイソンキラー・パーサーモンスターことyui-knkさんが出てきて、これまた圧倒的でした。昨日ひたすらDDRやってたこの人喋るとこうなるんだという感嘆ですね。むしろRubyistのみなさんが知ってるyui-knkさんはこっちなのかという感慨。

パーサジェネレータについては勤怠管理エクセルにコピペする用のCSVを吐き出すDSLを書こう!!!!と思い立ってLark*5を触って、でもなんか動かせた範囲で作ったものが(セミコロンが嫌いでPythonやNimやHaskellをやっているのに)あろうことかセミコロンまみれになった絶望でTrifecta*6で書き直すなど、なんかおれが至らないゆえにままならんものという印象が強くて、ぶっちゃけ苦手意識がものすごいです。なおさらそれを作る側となれば想像も及ばない。

そんななかでもまあ他のセッションもそうですけど、人がその好きなものについて全力で熱弁している姿というものは感じ入るものがあります。バトル漫画が概念バトルに傾いてきてわけわかんねえことを全員が真剣に喋ってるのを読む気持ち。西尾維新とか好きそう。好きですよ!?みんな好きじゃん!クールに熱いやつ!

タイトルにある通りのthe grand strategyがドーーーンと出てきたときなんかまじでドーーーーンって書き文字が見えましたね。

午前中2個聞いただけで脳みそからめちゃくちゃ汗がかかれ、昼飯をモリモリ喰らい、午後を聞きました。

黒曜さんのセッションを聞きながら急いでRBSについてググりました。Pythonのタイプヒントがバージョン上がるたびにブチブチ仕様が変わって結局書きづれえのを経験していたので、TypeScriptのdファイルみたいに別ファイルなのは一理あるなあという気持ちと、ファイル数膨れるの大変そうという気持ちが両方あります。HM型推論最高!やっぱ型って書きたくないですからね。Nimみたいに変数宣言時に型のデフォルト値を既に入れてもらえるとか、そういうリターンが相当無いと基本的にストレスという気持ちがある。

人間がやりたくないことは機械がやるべきなんだよなあと再確認しました。LLM元年から数年経ったのでそのうちなんとか……

gooseギャグ連打まじでよかったです。

脚が痛いのもあるが異様に濃密な話を聞き続けるのは思ったより体力を使うものですね、マルチスレッドで動くぐらいプロファイラーのオーバーヘッド削る話(マルチスレッドで動くぐらいプロファイラーのオーバーヘッド削る話!?)とかASTをパターンマッチングにかけて最適化する話(ASTをパターンマッチングにかけて最適化する話!?)とかがメモには残っているが意識が曖昧です。まじでもったいないことをした。スライド読んで復習しています。

オフィシャルパーティーは流石に予約できたので、そこそこに酒を飲みながら海風に紙皿を吹き飛ばされながら肉を食い、ハウス(テラ)へ……

普段無料宴会と聞いたら学生みたいな飲み方になってしまうのですが、さすがに自制心が働きました。午前様でこの勢いでセッション聞けねえよアドレナリンが足んねえ

Day 2

起きました。起きるのって難しいですからね。

通信まわりは全然わかんないのでキーノート観て「なんかヤバそうなことしてんねえ、あっ音が良い」というような感想を抱きながらボケーっとしていましたが、Time.nowを書き換えるのがオーバーキルなことはなんとなく雰囲気でわかりました。毎フレームHTML吐かせて安定して60FPS出すの多分すごい。

ydahさんの「parse.yの開発体験を上げる」というセッション、最初は「parse.yの開発体験とは……?????」と聞いていましたが、なるほどここまでリッチになると別物ですね。pcreとオニグモくらい違う。構造化という鉾を突き刺すとかなり良くなりそうというのは門外漢なりに納得しました。

ブース全然回ってなかったのでこの日はそこそこセッションを休んで回りました。スタンプラリーという言い訳があると話しかけやすいですね。天才。

これは3日目に撮ったBeingさんのブースの様子ですが、結構Haskell書き(しかも業務で)が居て嬉しかった。NimはRubyやる人が触る導線上にないからしかたないですね。まあNimにたどり着くルートが他にあるかというと疑問ですが……。

私はPython触って速度が足りなくなってNimに行きましたが、大抵の人はPythonで満足してしまうし、Pythonで満足できない人は大抵Pythonのシンタックスもろとも嫌いなのでみためかなりPythonっぽい構文の言語やりたくなさそう。 UFCS*7のおかげで書き味はだいぶ違うとはいえそもそも見向きもされなければそこまで体験できないし……。

APL遣い居たんですね(APL遣い居たんですね??????????)

StoresさんのとこのEnbuggingクイズ難しくて面白かったです。「ソースコードをなるべく短い編集距離で書き換えて指定されたバグを出すパズル」でのバグ起こしが生まれて初めて書いたRubyになりました。それでいいのか?

動的言語だけあって未定義変数のnilとかpの返り値とかかなり勉強になりました。ゲーミフィケーションされていると全力でリファレンス読みますねこれ。ほんで公式日本語リファレンスの読みやすいこと読みやすいこと本当に素晴らしい。

結構アグレッシブにカッコ省略できるのいい書き味ですね。パーサーに負担が行ってるのも宜なるかな。

udzuraさんのmrubyからwasm書かせるやつを聞きました。ベンチとか現状厳しいらしいですけどバイナリサイズちっちゃくてインポート・エクスポートが楽というのはすっげえなあという気持ちで聞いていました。今(5/27)思うとこれってブラウザをマイコン扱いしてるってことですよね(判断が遅い)。すご

mametterさんのTypeProfのセッションは、TypeProfのデモ、特に行間に推論された型がブワッと浮き出てくるやつはとても感動しました。というのもHaskellのLSPがHSLになってから……なので結構最近なんですが、シグネチャ書いてないtop bindに対して浮かび上がるようになって、かつクリックすると具現化するようになり、開発体験がまじでよくなったからですね。多分Purescriptのほうが早かった。型って書きたくないですからね。本当に嬉しい。これがRubyでも同じようにやれるとなるとRuby書いてみよっかなあとなりますね。

そしてこれを聞きに松山から飛んできた、sylphさんのAdding Security to Microcontroller Ruby略してASMRですね。この掴み大好き。ラズパイにもっとちっちゃいやつがあるというのをフワッと聞いたことがある程度の事前知識でしたが、聞けばなるほど過酷な計算資源で過酷なことをやっていることですね(詠嘆)。RSAに使う冪乗剰余はまだしも疑似乱数すらしんどいとはちょっと普段やってるプログラミングと前提が違いすぎて圧倒されました。

LTは全然メモできてなくて、この記事を書いている今からすると1週間前ちょいなので振り返りが厳しいです。yui-knkさんがめちゃくちゃいい顔で「Bisonだとできないんですねえ~~~~」って言ってたのは覚えてます。あとテストコードジェネレーターのテストが足りてない話も。

夜はちゅらデータさんのdrink upでした。社員さんのシェフが作ったイタリアンプレート美味でした。爆音を浴びながらさんぴんハイを飲むと気持ちがいいことを発見しました。

そしてRubyKaraokeですね。B1Fまるごと貸し切って混沌というべき空間が仕上がっていました。そのなかでもしっとりとカラオケに向き合っている部屋を拠点として過ごしていましたが、朝まで歌うにはちと体力が……。

深夜くらいにハウスして、ソーシャルゲームをやって、そのまま泥のように寝ました。

Day 3

起きました。起きるのって難しいですからね。

さすがに3日湿布を貼り続けているとかなり痛みが引いてくることで、体調が整いめの3日目です。

(そして執筆日時について前章から丸1週間程度ぶっ飛んでいるので記憶がどんどん曖昧になっています。)

Day 3のキーノートは珍しく撮ってました。他全然写真撮ってないのに……。

型シグネチャやイミュータビリティに対するみなさんそれぞれの愛憎や複雑な立場が垣間見えて面白かったです。

Aaronさんの赤黒木のセッションについて。赤黒木自体は名前だけ聞いたことある程度でしたが、自分のユースケースにことごとく合わなかったのでついぞ実装したことがありませんでした。インスタンス変数が削除できないなら綺麗に当てはめられるんですねえ……美しい。

junk0612さんのIELRのセッションこれ本当に難しかった覚えがあります。とにかく状態を管理しないとRubyの文法は複雑すぎて曖昧が生じてしまうが状態管理自体が膨れ上がっていて、それを解決するためにはレキサーとパーサーがもはや分かれていてはどうにもならない、という話でしたっけ??????これに限らず言ってること怪しかったら忌憚なく言ってくださいまじですみません。なんせRu:by知識ゼロから始めるKaigi生活だったので……

makenowjustさんの正規表現エンジン作る話も、正規表現は普段使いまくってるし行けるっしょと思って座ってたらどんどん話が混沌に踏み入っていってすごかったですね。普段Parsec系パーサコンビネータを使っているので何気なしにtryを書いてバックトラックしているのですが、パフォーマンスを取りながらバックトラックしたりマッチ結果の束縛をやったりが結構大変なことなんだなあと思いました。

Matzさんの話で、そこまでの要求が本当に必要かどうかは置いといてRubyは遅いという偏見があって敬遠している人がいる現状をなんとかするためにパフォーマンスに力をいれる、というくだりがあったのを覚えています。お恥ずかしながらどこで聞きかじったか、あるいは動的型付け言語なのでという類推か、完全にその偏見を抱いていたので……

コンパイルしてVMにバイトコード渡すなら確かにパキパキになりそうだし、JavaScriptとかいう動的言語の雄*8もおるしまじでどこで形成された偏見かわからないですね。

業務でCSVを3TB分pandasに突っ込んだらさすがに爆発して処理に丸数日かかったことがNimを触ったきっかけなくらいにはパフォーマンス厨ではありますが、一方でセミコロンが嫌すぎるのとコーディング中にメモリのこと考えたくなさ過ぎる*9のでCやC++やRustをやっていないという中途半端な立ち位置なので、このシンタックスがナイスな言語が結構速い*10というふうになるとかなりモチベになります。新規構文の導入とかもパーサー周りの整理のために先送りされるということで今がまじで初めどきなんですね!!!!!

このあたりでかなり帰宅即Rubyをインストールするぞという感じになっていました。

そんなこんなで異様に濃密な話を聞いて曖昧になっているうちに3日間が終わりかけていましたが……

OH WHEN THE RUBYISTS GO MARCHING IN

I WANT TO BE IN THAT NUMBER

all capsが出てしまい失礼しました。

次回は愛媛県松山市です!!!

コンパクトな中心市街地を有する街なので会場がどこになってもリアルおうちハウスから徒歩で参戦できて、三半規管や航空性中耳炎の心配をしなくていいのが個人的にはブチ上がりポイントです。

After Partyではとにかく手当たり次第に愛媛情報を喋りまくりました。鯛めしを名乗る別々の食べ物が県内に2種類あって道後あたりに食べ比べできる店があったようなきがするとか、道後温泉本館がずっと工事していたところ2025年春には確実に間に合うとか。4月中旬の松山は暑くもなく寒くもなく桜はちょっと残ってないかもしれないけど多分晴れるし最高の季節であることとか。

泡盛とさんぴんハイを交互にぶちこんで高らかになっている状態でMIXINへ直行!!

しようと思ったのですが思ったより体力がアレだったのでやんちゃハウスで休憩し、入ろうとしたら人多すぎて笑いました。

"川"をアフターパーティー後の人の塊を分散させるために復活させてもいいかなという話がなされました。愛媛県松山市にも石手川があり……。

ラウンジの方に居たら、ジャンプ禁止されるくらい沸きました。

ワンドリンクのさんぴんハイはどっか行きました。

朝まで踊りたかったのですが体力がやっぱアレで、締めステーキをやって寝ました。

Day 4

起きました。起きるのって難しいですからね。

荷物をまとめようとしたらノベルティで膨れ上がっていてナップサック問題ならぬスーツケース問題を解くことになりました。

やんちゃハウスを解散したあと流れで人生初A&W、初ルートビアをやりました。

多分Kaigi中は観光にならないだろうなあと思って帰りの飛行機をDay 5に取ったのでこの日はとにかくゆっくりしていました。

まず国際通りの快活の鍵付き個室をコインロッカーとして確保しました。

ナイトパックがない代わりに異様な席数*11の鍵付き個室があってビビりました。さすが観光地ですね。

愛媛県松山市で生活してるとほんとうに全国共通の交通系ICカードを使う用事に恵まれなかったのでスマホカバーに珍しくICOCAを挿し、これでゆいレールを乗り回していました。

JR四国の県内の駅でICカード使えるところは存在せず、地元私鉄(伊予鉄道)は長らく独自規格のICを振り回していたので……。

ただ朗報があって、使えるようになります!

www.iyotetsu.co.jp

郊外線対応がKaigiに間に合うかどうかわからないですが主に使うことになる路面電車は既に対応しているので、だいぶ良くなりました。

ゆいレールってモノレールなのに爆速で面白いですね。部分的に伊予鉄より速い。

首里城を見に行きました。コンビニの色がそういう感じになっていて既に良かったです。

oki-park.jp

継世門が工事中だったのでぐるっと大回りして首里城公園に入ったのですが結果的に守礼門から順番に回れたので正解だったかもしれません。

写真

正殿は2016年の火災からまだ直ってないと聞いていたので今しかみれない光景だろうなと思ってワクワクしていたのですが、想像の100倍本気の"見せる復興"をやっていたことですね。

なんかめちゃくちゃ神妙な気持ちになって色々買いました。非破壊検査で文化財の染料・顔料を分析する本とか。

那覇で働いている高校時代の後輩*12と合流して飯を食って、メロブを冷やかすなどしました。

Day 5

起きました。起きるのって難しいですからね。

帰りの飛行機は昼だったので正直遅くまで寝ていてもよかったのですが、なんかアドレナリンの具合があれになっていたのか珍しく目が覚めて、快活をチェックアウトし、全然店が空いてない朝の国際通りを徘徊しました。

これはポークたまごおにぎり3連打です。異様に腹が減っていたので連打したら夕方まで満腹で可笑しかったです。

ほんとうにやることがなかったので空港でおみやげを買い揃え、時間を潰しまくり、腹も減ってないし暇を持て余していました。

帰松ただいまつやま。

あんまり正気じゃなかったので空港からリアルおうちハウスまでスーツケースを頭上運搬しながら徒歩で帰ったところ、Day 0に傷めた太ももがぶり返してきました。

空港からはバスに乗ったほうが良いと思います。

振り返って

Ruby知識ゼロからRubyKaigiに初参加してみたという身として、一番大きく思ったのは「これ普段からRuby書いてても話の難易度変わんねえな」ということです。

言語を使う側と作る側の立場の違いに起因するのだと思いますが、そもそも話の内容が最先端Tech揃いなので場で聞いてパッと詳らかに身につくものではなさそう。

では得るものがなかったか?というとそれもFalseで、なじみがない分野のオーバービューをふんわり叩き込めたというのがひとつ、もうひとつはテックに対するモチベーションですね。

全力の熱弁というのは聞いてて奮い立たせられるもので、かなり健康と知的好奇心に良かったです。

あとは、特に普段プログラミングと無縁の企業で一人PCカタカタしている立場なので、見渡す限り1400人全員プログラミング人間という環境がほんとうに面白かったです。*13

純粋に祭りとしても楽しかったです。

いい経験になったなあと思うと同時に、たくさんのひとびとの協力で今日こんにちまで続いてきた場なのだなと思いを馳せています。

いやーよかった。

言い訳でもするか。このブログエントリがここまで時間かかっちゃったのは、ひとえに生活リズムのなかに執筆時間がないところむりやりねじ込んだら体調がおかしくなったからですね。

総じてみなさん体力すごいな???????ネバダ砂漠を自転車で横断してからいらっしゃった人とか居たし、やんちゃさんは原付とフェリーで東京から来てるし。

来年までにちょっと鍛えてもう少しタフに楽しめるようにしたいと思いました。

さて、来年は愛媛県松山市です。

いいとこです。いい季節です。是非おいでて楽しんでいってください。

お待ちしております。

*1:あるいはビゼロ

*2:那覇市にも松山という地名があり紛らわしいので以降この表記で行きます

*3:その後5/23に提出しました。どうしてこのブログはこんなに時間がかかっているのか

*4:5/31に会ったのに忘れてた

*5:https://github.com/lark-parser/lark

*6:https://hackage.haskell.org/package/trifecta

*7:Unified Function Calling Syntax、D言語にあるやつ

*8:あれなんであんな速いんですかね

*9:機械がやってくれるようになったことを人間がまたやらなきゃいけないようになるの本当につらい、GC/RC最高

*10:しかも型を書かなくていい

*11:愛媛県松山市の大街道店の10倍くらい

*12:ぼくが留年しすぎて大学時代同級生を経て先輩になった

*13:「アイスはそこらへんにデプロイされてます」で周りがドッと湧くことなんてなくって……

progress in LIFE4 Gold I

my skillattack(http://skillattack.com/sa4/dancer_profile.php?ddrcode=51449631)

Gold I requirements quoted from https://life4ddr.com/rank-requirements/#gold

selective reqs

950k+ a 14

Role Playing Game ESP 968,420

915k+ a 15

CyberConnect ESP 967,700

Clear 3 14s on LIFE4

chart result
勇猛無比 ESP 966,240
Hella Deep ESP 924,060
ONYX ESP 962,210

Clear all boss songs on DSP

chart progress
Valkyrie dimension
PARANOiA Revolution
EGOISM 440
Over The “Period”
ENDYMION
MAX 360
Lachryma《Re:Queen’M》 not unlocked

Clear 20 15s

CyberConnect ESP 967,700
City Never Sleeps ESP 946,220
I want to do this keep ESP 940,330
おーまい!らぶりー!すうぃーてぃ!だーりん!ESP 928,210
Our Love ESP 925,770
HyperTwist ESP 918,990
Horatio ESP 917,250
シュレーディンガーの猫 ESP 914,940
ロストワンの号哭 CSP 908,280
Procyon ESP 903,400
MAX 300 ESP 903,380
狂水一華 ESP 902,750
HARD BRAIN ESP 902,320
エンドルフィン ESP 898,660
BLACK JACKAL ESP 891,140
ZEPHYRANTHES ESP 876,120
SABER WING (satellite silhouette remix) CSP 868,050
Cleopatrysm ESP 864,020
ZETA~素数の世界と超越者~ ESP 859,210
ユメブキ ESP 853,500

Clear 10 16s

High & Low ESP 894,250
打打打打打打打打打打 CSP 883,300
POSSESSION(EDP Live Mix) ESP 882,920
ノープラン・デイズ ESP 865,510
Sword of Vengeance ESP 864,500
Idola ESP 856,510
Last Twilight ESP 854,080
I'm so Happy CSP 843,860
隅田川夏恋歌 CSP 842,100
We're so Happy ESP 824,870

Clear 3 16s in a row

  • High & Low ESP
  • Sword of Vengeance ESP
  • Idola ESP

Clear a 17

び ESP 790,110

mandatory

Clear 30 14s

67/30(current as of May 22nd 2022). see my skillattack

PFC an 8 or 3 6+s

Our Love BSP 999,670

Shadowverse 古城ヴァンプの話

(この記事はアルティメットコロシアム(アディショナル追加前)のアンリミテッドについてです)

おはようございます。手札事故です。

手札事故を名乗る以上たまにはカードの話をするよ。

この記事を書いている時点でA3なのでAA帯やマスターの諸君は以下全部話半分で聞いてほしい。

古城ヴァンプって今大丈夫です。握れる。

f:id:handjiko:20200118045037p:plain

これは現段階の構築です。

発端ですが、

f:id:handjiko:20200118044945p:plain

この子が実装され「5ドローしたい!!!!!!」と叫んだ。

腐ってもカードのオタクくんだからね、カードを沢山ドローすると気持ちがいい。

手札の消耗が激しいイメージであった自傷ヴァンプに組み入れていたところあまりにも枚数を引くのでフラウロスが全部手札に来るなどのあれがあった。

終わりか?いいえ。

このような極端なドローソースを主軸にする以上手札を高速で消費して、しかも高速で消費することが常に強いデッキである必要があると感じ

f:id:handjiko:20200118045634p:plain

f:id:handjiko:20200118045639p:plain

古代のテクノロジーに助けを求めたのである。クッソ古いカードですね。

古城ヴァンプというのはこの吸血鬼の古城と各種フォレストバットサポートを核としたデッキです。かなり初期のやつ。基本的には忘れ去られていて、ツイッターを見る限り現在私しか話題にのぼせていない。*1フォレストバットが出るカードが継続的に刷られているおかげで実はじわじわ強化されている。

更地でも古城とヴァンピィと1コス以下が揃えば進化込みで展開しながら4~5コスト6点以上のバーンが見込める。バーンという点が偉くて極光が怖くない。あと誰も知らない。*2

 

さて、構築の話に移ろう。

初めてこのデッキを見た人は馬鹿にされたとでも思うかもしれない。

ここにはアンリミヴァンプのパワーカード達である花園もヴァーナレクもフラウロスも闇喰らいも、糸蜘蛛も獄炎も魅惑も新旧ユリウスも新アザゼルも新ラウラもなにも無く。あるのは見慣れた低コスト疾走といつもの低コストスペルたちを除けばなんか貧弱な連中だけ。

基準はある。無かったらブログにしない。

「かるい」「はやい」「わからない」「まるい」の4点だ。

ユナと悪夢の始まりで大量にデッキを掘り進みつつその手札を余さずツラ顔面フェイスにぶちまけることがコンセプトである以上、1ターンに複数枚手札を消費することの難しい高コストカードはいくらカードパワーが高くともそぐわない。これが「かるい」。

多くの環境デッキが進化ターンまでゆっくりと弱い盤面を作るところを咎めに行きたいと同時に、ゲームがもつれたとき今引きのドロソから引っ張って打点になるカードのほうが嬉しい。これが即効性という「はやい」。もうひとつは相手の顔が削れるスピードのほうが自分よりも「はやい」。

明らかなパワーカードは相手の除去のいい的になってしまう。限られた手札の除去をどこに切ればいいかわからないうちに残ったカードで殴りきられるような経験をプレゼントする。これが「わからない」。

特定のコンセプトカード、例えばユナすら引けずともデッキ全体が終局までほぼフルパワーで回り続けるためには、復讐状態や自傷回数や機械の枚数を参照するカードはあまりに安定性に欠ける。これが「まるい」。

これらはそれぞれ相互に影響し合うものではあるが、これによって多くの不採用カードが説明できる。

アンリミは魔境なのでアザゼルに進化を切った瞬間にムキムキのフェアリーが4体飛んできて爆発して「はやくない」。ヴァーナレクが走るターンまでこのデッキは待たない。新旧ユリウスは置いた瞬間に点が出なくて「はやくない」し除去の良い的で「わかりやすい」。獄炎や魅惑は大概うまくバフが乗らないので「まるくない」し新ラウラは進化権のない非復讐状態では重いだけの木偶で「まるくない」。血統の王やレジェヴァンピィはこのデッキには「かるくない」。回復を放棄しているので花園のような過度な自傷は体力勝負が苦しく「相手にとってはやい」。

んな感じでグチグチ言ってたらかなりのカードが消えてみすぼらしい見た目になった。

なんだかんだ丁度いいマナカーブみたいなのも見つけて、テンポロスのないドローである街、悪夢、ユナをぶつけながら毎ターン全pp消費するデッキになった。

1コスをブラーか呪剣か、2コスの新参を眷属の召喚やアンテロープウォーリアーなどと交代するかどうかみたいな試行錯誤はまだやります。皆様もぜひ改造してほしい。さっき否定したが花園はかなりアリだと思っている。1枚ね。

 

プレイングなど。

マリガンはよくわからん。気分でドロソ優先したり低コス優先したりするけれど0コス6枚1コス8枚2コス17枚なのであまり後者をやる意義はないかもしれない。1ターン目動けないと勝ちづらいのは否めないけれど。

基本的にあるものを撒く。蝙蝠絡みの細かなコンボが結構あるので選択肢があれば考慮したい。ま雑に2t目にヴァンピィ投げても良いんですけどね。2/2/2だし。帰ってきたら3tの悪夢のバリューがすごくなるし。古城を起動するタイミングも可能になり次第でいい。ヴァンピィや他の古城と組み合わせると爆発はするが、大体2枚めが掘れるし無理に温存するよりはその場その場で起こしたほうが火力が速い。

ただ贈り物については注意してほしくてただ撃つのはほぼディスアド。なるべくヴァンピィや古城とのコンボで使うか、ユナ直前に唱えてドロー枚数を増やすか、トドメの1点としてかそのようなあれをあれしたほうがいい。めちゃくちゃ事故って3ターン目まで贈り物以外できないとき?負けだと思う。

エンジェルバレッジ類*3が環境にほとんど見られないので*4、フォレストバットとかいう貧弱(1/1/1)な者共を並べるだけで実は制圧になってしまう。テキストから初見では何点飛ぶのかわかりづらいのも拍車をかけている。私もわからなかった。

本当に貧相なスタッツの人たちなので防御性能は一切無い。轢く。相手の除去が緩ければ後攻4キルが案外出る。特にアグロデッキ以外の序盤は本当に弱いので進化ターンまでに体力を半分近く持っていくことが安定して可能。ナテラの大樹はテンポロス。相手がアグロでも顔に飛ばしたいものたちで盤面を処理してくれたなら作戦勝ち。こちらには強力なドロソがあり継戦能力でまさっている。

盤面はなるべく処理しない。鎖はできる限り美味しく打つために入れている。アドって良い言葉だと思いません?大型守護はしんどいがそんなものが出てくる頃にはルシウスやユナやヴァンピィに進化を切るのが間に合う。*5

キルターンは平均5、6ターン目安。回復が多い相手だと7ターンや8ターン目にもつれることがあるかもしれない。この早さはアンリミのデッキのなかでもかなりの方だと思う。最速アマツには色々かなわないが最速でなければ轢ける。自傷ヴからフラウロスが出る頃には終わらせられる。ウィッチの除去は後手後手で追いつかない。そういう速度だ。誇っています。

 

最後に。

私は普段強いデッキよりも回して楽しいデッキを目指しているふしがあり、だからまだA帯なのだけれど*6、そうやって楽しいデッキを組もうとした結果今回思わぬ強いデッキができてしまってしかも他の誰もやってなさそうだったので文字数を書いてしまった。読みづれえなこれ。すんません。みなさんも楽しいカードバトルを。ほな

*1:アンリミ人口のせいか?

*2:吸血鬼の古城ってダークネス・エボルヴ収録らしい かの不人気パックじゃあしょうがない

*3:4コストまでの低打点AoE

*4:エイラすら攻撃的な構築は新クルトを採用してない

*5:なるべく顔面に飛ぶように進化は切りたいが

*6:集中力に問題があって一日に大した戦数を回せないという都合もある

日記 2019-10-1

消えたアカウントを何遍も訪れる。

生卵を飲んで、煙を吐く。

知らない庭先でハナニラが揺れている。

画面に焼け付いた「ツイートはありません」。

真新しい眼鏡は朝焼けの世界に少し色ズレを起こして、夜眠れなかった胃袋を叩く。

癇癪で嚥下した7つの命をゴミ箱に捨てるまいと口を結ぶ。

喉元で問題を終わらせる。

10億枚のクッキーを消費する。

祈りは工場より多くクッキーを焼く。

2019年10月は当たり前のようにやって来て、当たり前のように僕をかき乱して鎮座する。

アパートの階段でカナブンが死んでいる。

夏休みが明けて昨日大学は思い出したかのような変わらなさで人間の群れを収容していた。

ディスプレイの中でプリンセスコネクトリダイブと叫ぶ少女を中断し、やはりあのアカウントは消えている。

8%で買ったカフェインが、水もだけど、机上に屹立して、僕は途方に暮れながら自宅で潰れた虫の姿勢をとって、しかし。

「定期的に脱皮するように消えるよね」

「Windowsアップデートのようなもの」

僕よりも旧い知己をやっている存在たちがそう感想しているところ気を病むようなことでもないのだろうとは。

わかっていて。

終わっている。

3年前の4月に買い与えられたばかりの自転車を盗まれて登下校に窮していたのだけれど、それが今日戻ってくる旨電話があり、部屋の隅の紙くずの中から古い鍵を探した。

鍵には母校の公立中学の卒業記念品である革製のストラップが2013年という文字を湿気に軽く歪ませて揺れてあった。

いろいろなバイトで適応不全を起こして以来しばらく親の仕送りでのみ生活していたが、発起して家庭教師を始めることとなり、本来今日の夜が初仕事の予定だった。

伸びたひげを剃って煙草を控えてなどしていたところ生徒さんが体調不良であるので延ばしてという連絡があった。

吸った。

数日前に初めて眼鏡を拵えて、5000円支払って手に入れた視界は、裸眼視力が1.5あった頃の記憶がいつの間にか薄れてしまっていたらしく気持ち悪いほど鮮明で、三半規管がとても弱いと自負している僕にはあまり長い時間やっていかれるものではなかった。

本当はもっと奇抜な色のフレームを選びたかったが僕の肌色には藍しか似合わなかった。

9月の頭に帰省から戻ってきた僕は、その前の帰省から戻ったときのように自転車が忽然と消えてしまっていなかったことにとても安堵して、けれど突然火災報知器から漏れ出した大量の臭い水によって生活を破壊されてしまった。

生協から連絡が来なくなってしまって、スーツのクリーニング代に保険が出ていない。

回線代の滞納によって止められてからずっとWi-Fiは息をしていない。

ともあれ。

大学に入学して4年目になる。ずっと留年して1年生をやっているわけだが、自転車を3回買い換えていて、最初が買ってもらったピカピカの(一週間で盗まれた)もの、2つ目が後輩から譲られた蔦の絡んでいた(帰省中に消滅した)もの、3つ目が同輩から5000円で買い受けた年季の入ったもの。

今日ひとつめが帰ってくると2台自転車を有つことが結果される。

自転車について、今まで運命づけられたかのように自分の手の元から離れていってしまっていたのが当然だったから、そんな僕が2台も保有して、所有できてしまうことに漠然とした不安が募って、首に指を回して喉を抑えた。

絶対に吐きたくない。

食費がもったいない。

今日消えたアカウントについて述べると、仲がいいとか悪いとかを超えた今まで無い程度の共鳴が(元々良いとは言えない双方の体調がめちゃくちゃになるような悪い共鳴だとは思っていたが)ありました。僕は半引きこもりなのでインターネットのひとびとの顔を知る機会に乏しいのだけど、一週間前気まぐれと何らかの思し召しによってオフ会がなされた際、初対面にもかかわらず僕たちは毎正月遊ぶ同年代の親戚のような"嵌り"を起こしてしまって、解散した後にツイッターで僕らしくもなく情緒不安定になってしまったときは本当にみなさんの迷惑になってしまった。今もそうですね、ごめんなさい。兎にも角にも自我の境界があやふやになるというか、他人とは思えないというか、そういう存在に巡り合っていたところへ忽然と消えてしまったものだから、一時的なものだろうとはわかっていても、自転車のように帰ってこないような感触があって、自分の脳の一部を喪ったかのように無様な理性をしている。

冷蔵庫の中に存在していた限りの生卵7つが消化器に重い。

10月の最初のおそらく0時であるから彼の意思によって彼は僕らの前から去ったのだろうと思う。やがて新しい名前で現れるころには、最初に僕たちはブロックされているかもしれない。

多い。

通信制限のかかっていたスマホでは、discordのミュージックボットでお気に入りの音楽を流すと、通信が耐えられず音楽性皆無のグリッチを施して、曲に染み付いた思い入れを破壊しながら聴覚にのぼせていた。

ソシャゲを起動するために僕はコンビニの外で、周回を終えるための時間では一服分は燃え尽きて、肌寒くなった夜に身をかがめて、着ているモンベルの半袖の中でペンギンが空を仰いでいた。

お土産にと彼からもらったのは武将の名を冠した甘くて強い日本酒で、そういえばお酒の好みを聞かれたときに「甘くて強いもの」と答えた覚えがあり、飲みきった瓶は枕元から視界に入る棚の上に寝かせてある。眼鏡を掛けないとラベルは読めない。

多い。

バズる時事はサーカスなので、ツイッターであまり感情にならないようにしている僕だけれど、そんな僕が気持ちをぶちまけてしまうほどにこの2019年9月は、そしてトドメのように10月1日は気持ちが多かった。

鍵穴を見失った古い鍵と一緒に埃を被っていたこんなブログを(パソコンはどうしようもなくオフラインなので)スマホアプリをインストールしてまで書きなぐっているほどには。

多い。

こんな文量推敲したくないという気分がめちゃくちゃあり、多分目も当てられないくらい散った文章になっているとは想像するが、ここまで読んだのならおれと一緒に泥舟に沈んでほしい。おれも恥ずかしいんです。助けてくれ。

2019年10月1日、今日は「先生」が去り、自転車が戻り、バイトが延び、大学があり、ブログに復帰した日。

鮮やかな視界では耐えられないので眼鏡を外している。

「むつこい」考

おはようございます。手札事故(id:handjiko https://twitter.com/hand_accident/ )です。

活動があり、書きをします。

話題は、方言です。

日本語には多様な方言がありますがその全てが標準語とは多少なれ音韻、語彙、或いは文法などに相違を持っている以上、方言で育った者が第二言語として標準語を学ぶには「つっかえ」が時に発生します。

発音やアクセントの違いなり文法要素の有無やバリエーション*1*2なりも慣れに若干の脳負荷を要してフラストレーティングですが、標準語にない複雑な意味・ニュアンス・概念を持った簡潔な語が通じなくて翻訳にまどろっこしい説明を強いられるときなど厳しいです。

嫌だなあ。

「むつこい」、あるいは「むつごい」*3という形容詞があります。

f:id:handjiko:20181111103136j:plain

あって、これが該当のです。

一応ググっときますかをすると三省堂の全国方言辞典をラップしたgoo辞書がトップに出ます。

むつこい(愛媛の方言)

  1. 脂っこい。味がしつこい。
    • ちーとむつこいかなー、ゆー差しとおみや
    • (ちょっと味が濃すぎるかな、湯を差してごらん)
    • ※ 東予では「むつごい」。

むつごい(徳島の方言)

味がしつこい。油っぽい。

  • 焼き肉はうまいけんどちょっとむつごいな
  • (焼き肉はおいしいけれど少し油っこくてしつこいな)

むつごい(香川の方言)

〈味が〉濃い。脂っこい。

  • 朝からあげもんはむつごい、こんこでえーわ
  • (朝からてんぷらは脂っこい、たくわんでいいよ)
  • ※ 人の性格では「えげつない人」をいう。

dictionary.goo.ne.jp音が揺れてはいますが同一概念であることがわかると思います。

ネイティブの感想ですが、記述が物足りない。あと土佐弁・幡多弁*4でも言う*5。

何が物足りないか。香川県の項で少し触れられているがこの形容詞実は特段飲食物のみに用いられるわけではありません。

んですね。

と言いましたが「むつこい顔」「むつこい声」などを検索するといいです。

「視覚的にうるさい」など共感覚的な表現ーー五感のうち特定のものを他の感覚に比喩的に転用するやつーーは標準語にもないではありませんが、この形容詞は味覚からスタートして様々になります。

これは様子です*6。

これは抽象化(汎感覚化)への足掻きです。

ところで段々執筆に疲れてきて自分のツイートの引用が増えてきていますね。無様か??????

おそらくツイートの合間にいっぱいググりをしていて、用例を見つけて気づきました。

harutanaoki.hatenadiary.com

映画の感想記事ですね、今回は淡白に用例として扱います。

ええと読むとわかりが発生しますが、この人自体は「むつこい」を「濃厚であるとか、こってり」と味についての表現として紹介した直後、脈絡なく映画の展開の形容にぶち込んでいます。すごい。でも正しい。

 とにかく意味の幅が広く、しかも話者はその広さに無自覚なのでとりあえず原義を簡単に言いがちで、上のブログは端的な例です。その上で容赦なく「共感覚」はするという良い例にもなっています。すごい。

方言辞典を詰めるような言い方にはなっていますが、どうしても全国型の方言辞典かつ収録語数がたったの3800語とかなり小ぶりであること、さらに話者に訊いても上記の理由で味についてしか返ってきにくいなどから仕方なくはあります*7。

っでその上記の短い記事ですが他にも収穫がありました。

全国方言辞典に引かれた3つの例文とは対照的に、(外連味みたいな「半分褒める」表現とはいえ)褒め言葉として使ってるんですね。

認識の更新です。基本的にネガティブな形容詞でありながら直接快不快を含意するわけではないので時にポジティブに使えるという点、TCGのスラング「まるい」*8が直接ポジティブな意味を含意しないので貶しとして用いることができる*9点と似ています。

これらは直感です*10*11。

「くどい」は「執拗」「しつこい」と意味がかぶっているのでこのツイートでは反復性について言及したかったんだと思いますが不可欠というまで大切な要素ではないのでは*12?わからん

あー。

読むの疲れたと思いますし筆者も書くの疲れたのでそろそろ終わりたいです。まとめを

まとめ*13ると、「むつこい/むつごい」の意味は

(食べ物が)(味の)濃さ、(油気、甘みなどの)強さで胃にもたつくような味である

↓(共感覚化)

(色使いが)けばけばしい、豪奢である、視覚的にうるさい

(顔立ちが)濃すぎる、パーツの主張が激しいetc

(物音、楽音が)けばけばしくてしつこいetc

(人声が)過度に演技がかって暑苦しいetc

(出来事が)情報過多かつ執拗であるetc

(話が)(お涙頂戴やお色気など)話の(多くは主菜でもない)力点が過剰で疲れるetc

(

 

 

など*14

えー多方面に分岐派生しクソ便利な形容詞になって他都道府県民を悩ませています。

 

おしまい

f:id:handjiko:20181111103142j:plain

*1:関西を除く西日本では広く「ヨル・トル」という二種類の「(し)ている」が区別される。ざっくり言うとbe doingとhave doneの訳し分けが可能で必要

*2:使役?強制?のニュアンスを含む可能表現「サル」が東北・北海道などにあると聞いたが詳しくないのであとで調べます

*3:松山出身なので東予(愛媛県を三分割した東部)や香川、徳島で濁音形であると知って驚いた

*4:高知県の方言は大きく東西に二分されていて、東の土佐弁と西の幡多弁でアクセントや語彙などが大きく違う

*5:それぞれ証言数1ずつで、土佐弁地域出身の後輩と、幡多弁が第二言語の筆者です。な↑っっっし載らんが

*6:ちょうど無料公開中の将太の寿司を読んでいて、さまざまの状態がありました

*7:だからもっと詳しくて正確な辞典あるいは研究を以てグーグルは表示してほしい。お前半分インフラやぞ

*8:無難な、安定したという意。ピーキーの対義語。安定した性能のカードやそれを用いたデッキは事故(デッキがうまく回らないこと、銃のジャムや交通渋滞みたいなやつ)に強いので基本的には良いことであるが、切り札のパワー不足やコンセプトのつまらなさを指していうとネガティブ用法になり得る

*9:でもぶっちゃけあんまり見聞きしないなあ

*10:直感を馬鹿にするな話者やぞ

*11:ただし怒られは大人しく受けます

*12:確かに派手なことを執拗に繰り返されるのはむつこいことが多いが

*13:abstractを最初に書けという強迫的な脅迫が過激派からインターネットのあちこちに今日も飛んでいるらしい、うちには来たことがなく平和なインターネットであることだなあ

*14:しんどいけん代わってや

日記 2018-5-15

物語は特筆性でできている。

そんなとりとめのないことを呟く僕は、自室の浴室で紫煙を吐いている。

アメリカンスピリット・ウルトラ・ライト 3mg。

モンスターエナジーの空き缶に擦り付けると灰が落ち切っ先が赤く尖る。

吸い始めたのはいつだったか、いつしかタバコにも慣れてしまった――即ち、日常。描写するに値しないなって。

12mgのターコイズを吸うにはこの場所の風は弱い。

トロトロと回る換気扇が頼りない。

僕は小説が書けない。

物語は特筆性でできていると同時に、多くのそれは複数の個人間の感情のやりとりに重きをおいている。所以(ゆえん)映えるのは殺人であるとかだ。

僕は人が殺せない。殺すどころか、ぶつける激情に乏しい。臆病ゆえだ。

"Just not for me." 気に入らないものへの不快はその四語で握りつぶすのが常。「おれ向けではない」。寛容から出たものではない。人が怖い。人の悪意と報復が。

人を殴るとき大抵殴られる距離に在る必要がある。しかしこの細い腕では、この童女の身体では、リーチが悪くてこの頬だけが殴打を被ることも多々あろう。

鏡のなかの僕はボサボサの金髪と尖った耳をしていて、濁った碧眼にクマを湛えている。

人間の街に暮らしているのだ、その法に従って20歳の誕生日まで吸うことをしなかった煙草はいつの間にか生活の一部になっていた。

ぐちゃぐちゃの頭をニコチンと酸欠で鈍らせると気分がマシになる。矮躯には毒だが成人だ。人が法のためにあるのではなく法が人のためにあるとしても、僕はエルフだ。好きにさせてくれ。

人の悪意や復讐が恐ろしい、ないしは。

いいえ。踏み込むのはためらわれる。その試みは、けして健康とは言い難い僕の心を暴き立てるのはとびっきりの自傷で、not for me(趣味じゃない)。

僕は小説が書けない。それは物語のもつ不可逆性に臆しているのかもしれない。局所的に、かつ空想のものだとしても何かを終わらせてしまうのがひたすらに怖い。「ファンタジーは現実逃避の道具ではなく、現実に到達するためのほとんど唯一の手段だ」とはミヒャエル・エンデ翁の言葉だったか。幻想を侮ってはいけない。

終わりは始まりだ。僕は始めるのも苦手だ。始められないし終えられず、現在を漫然と繰り返すことに終始する。

神を仮定すると僕は酷く依存していて、一切の責任と自由を預けている。ムスリムは吉祥と不幸の両方へ「アッラーに讃えあれ」と言う。未来への言及に「アッラーの望むなら」と添える。彼らは神の強大さを信じているが、僕は自我の弱さを自覚していて、どちらにせよ個々人の意志の相対的な無力さをドグマとする。

どうしようもないことはどうしようもないし、なるようにしかならないと信仰している。

気づけば指が暖かいし煙草が短くなった。アメスピは長い時間燃えるんである。空腹には堪えるなあと思いながら、軽くふらつく頭をかしげて火をすり潰す。

頃合いだ。

僕は小説が書けない。とりとめのない話をしてごめんね。