見出し画像

久しぶりの「写経」日記

お疲れ様です。Y研究員です。近況報告です。わかりやすい話から始まって、マニアックな話になっていきます。

よく寝ています

今までこのブログは寝る前に書いていました。しかし、ご飯を食べて子供の世話をした後はそのまま寝ることにしました。おかげさまで体調を崩すことなく快調です。

寝ることで免疫力が確保できている気がします。適度な運動もできているので、脳もスッキリしています。デメリットはブログを書く時間が減ったことです。しかし野球の大谷翔平もよく寝ると聞きます。睡眠時間を削るよりも、他の無駄な時間を削れと理解しました。

独自のプログラミング言語を作ってみた

過去の記事でマニアックなプログラミング言語について書きました。古い記事でしたが「スキ」のボタンを押してくれた方がいたので、読み直してみました。そこから、最近はChatGPTがより強力になったので、手助けをしてもらえれば独自言語が作れるのではないかと思いました。

しばらく問答をしてみたところ、大まかに2つの部品をつくれば良いことが分かりました。1つ目は書かれた単語を順番に読み取って、意味のある記号の羅列にする部品です。printと書いてあれば、表示する命令の記号にする感じです。2つ目は、並べられた記号を解釈して、ひとまとまりの命令にする作業です。例えば、print("hoge")と書いてあれば、「print」の次は「(」でその次は「”」と順番に読み取ります。「print("hoge")」のまとまりが確認できたら「hogeを表示する」という命令とします。

Tenguと名付けました。「あ」がprintになります

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

Errorは出てますが動きました。

AWKの本を読み始めた

AWKという古いツール(1977年製)を作った作者が、本の改訂版をだしました。コロナで暇になったから、と理由が書いてありました。コンピューター言語やツールは作ったヒトの本をよむと理解が深まる気がします。C言語もそうでした。

AWKはいい意味で枯れたツールです。古いながら設計が良かったからか未だに使われているます。本自体は、肩の力が抜けていて穏やかに読むことができました。AWKは作りながら修正していくスタイルなので、そのへんの緩さもいい感じでした。使い方はこんな感じです。

名前、時給、勤務時間のデータがあるとします。
勤務時間が0より大きい人の、名前と時給x時間を表示させます

結果です。エクセルで関数を書けばできます。
しかしAWKはキーボード操作だけで完結します。肩こりは減ると思います。

読み進めていくとただのツールではなく、プログラミング言語にもなると書いてありました。我田引水がきつい気もしますが、そこまで押し付けがましい感じがしないのは不思議でした。少し変わった人が吹っ切れてしまった様子を横から見る感じでした。

作例に独自アセンブラが出てきました。先程書いた自作プログラミング言語にとても近いネタなので、次の写経はこれにしようかなと思っています。

そろそろ寒くなってくるのでご自愛ください。

それではまた。

読んだ本

AWKは作った人の頭文字をとったらしいです。研究室の部屋が並んでいたと書いてありました。作者の一人は「Aho」さんです。「エイホ」と読むそうです(一安心)。

過去の記事

いいなと思ったら応援しよう!

KY研究所@CoderDojo横浜港北ニュータウンやってます
無料のプログラミングクラブCoderDojoを運営するにあたり寄付を受け付けています。お金は会場費・Wifiの費用・教科書に使用します。