
久しぶりの「写経」日記
お疲れ様です。Y研究員です。近況報告です。わかりやすい話から始まって、マニアックな話になっていきます。
よく寝ています
今までこのブログは寝る前に書いていました。しかし、ご飯を食べて子供の世話をした後はそのまま寝ることにしました。おかげさまで体調を崩すことなく快調です。
寝ることで免疫力が確保できている気がします。適度な運動もできているので、脳もスッキリしています。デメリットはブログを書く時間が減ったことです。しかし野球の大谷翔平もよく寝ると聞きます。睡眠時間を削るよりも、他の無駄な時間を削れと理解しました。
独自のプログラミング言語を作ってみた
過去の記事でマニアックなプログラミング言語について書きました。古い記事でしたが「スキ」のボタンを押してくれた方がいたので、読み直してみました。そこから、最近はChatGPTがより強力になったので、手助けをしてもらえれば独自言語が作れるのではないかと思いました。
しばらく問答をしてみたところ、大まかに2つの部品をつくれば良いことが分かりました。1つ目は書かれた単語を順番に読み取って、意味のある記号の羅列にする部品です。printと書いてあれば、表示する命令の記号にする感じです。2つ目は、並べられた記号を解釈して、ひとまとまりの命令にする作業です。例えば、print("hoge")と書いてあれば、「print」の次は「(」でその次は「”」と順番に読み取ります。「print("hoge")」のまとまりが確認できたら「hogeを表示する」という命令とします。

Rustで書いてみてなんとか動いたのでとりあえず満足しました。

AWKの本を読み始めた
AWKという古いツール(1977年製)を作った作者が、本の改訂版をだしました。コロナで暇になったから、と理由が書いてありました。コンピューター言語やツールは作ったヒトの本をよむと理解が深まる気がします。C言語もそうでした。
AWKはいい意味で枯れたツールです。古いながら設計が良かったからか未だに使われているます。本自体は、肩の力が抜けていて穏やかに読むことができました。AWKは作りながら修正していくスタイルなので、そのへんの緩さもいい感じでした。使い方はこんな感じです。



しかしAWKはキーボード操作だけで完結します。肩こりは減ると思います。
読み進めていくとただのツールではなく、プログラミング言語にもなると書いてありました。我田引水がきつい気もしますが、そこまで押し付けがましい感じがしないのは不思議でした。少し変わった人が吹っ切れてしまった様子を横から見る感じでした。
作例に独自アセンブラが出てきました。先程書いた自作プログラミング言語にとても近いネタなので、次の写経はこれにしようかなと思っています。
そろそろ寒くなってくるのでご自愛ください。
それではまた。
読んだ本
AWKは作った人の頭文字をとったらしいです。研究室の部屋が並んでいたと書いてありました。作者の一人は「Aho」さんです。「エイホ」と読むそうです(一安心)。
過去の記事
いいなと思ったら応援しよう!
